androidedittext移動
❶ Android的EditText長按只顯示上面的復制粘貼菜單,不要彈出下面的輸入法鍵盤怎麼做
4.0以上的API禁止EditText彈出鍵盤需要這樣寫:
4.0的是setShowSoftInputOnFocus,4.2的是setSoftInputOnFocus。
java">EditTexteditText;
//editText的實例化我不寫了
InputMethodManagerimm=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(e1.getWindowToken(),0);
try{
Class<EditText>cls=EditText.class;
setSoftInputShownOnFocus=cls.getMethod("setShowSoftInputOnFocus",boolean.class);
setSoftInputShownOnFocus.setAccessible(true);
setSoftInputShownOnFocus.invoke(editText,false);
}catch(Exceptione){
e.printStackTrace();
}
並且還要在配置文件裡面加上android:windowSoftInputMode="stateHidden"
4.0以下的可用editText.setInputType(InputType.TYPE_NULL);
或者直接在XML進行屬性設置。
如果對4.0以上系統的操作這句代碼,EditText將會沒有游標。
❷ android開發,edittext監聽跳轉的時候會先換行,然後游標再跳入下一個edittext,這是怎麼回事
enter按鍵按下才觸發鍵盤偵聽事件,所以會有enter效果。
et.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
// TODO Auto-generated method stub
if(actionId==EditorInfo.IME_ACTION_UNSPECIFIED){
name.requestFocus();
}
return true;
}
});
用這個偵聽方法。
❸ Android-EditText之代碼動態修改編輯框游標顏色(通過反射的方式-簡單記錄下)
在開發Android應用時,涉及到自定義彈窗的封裝,如FanChael/CommonPopupWindow,可能需要實現統一的界面風格,包括編輯框的游標顏色、下劃線顏色以及按鈕背景顏色。針對編輯框的游標顏色,這里採用了一種通過反射方式動態修改的方法。
實現步驟如下:
- 創建一個工具類,例如`EditTextUtil.java`。
在工具類中,封裝方法來動態修改游標顏色。具體操作可以通過反射機制訪問並修改`EditText`類的私有成員變數,如`mCursorDrawableRes`等。這樣,根據傳入的顏色值,可以實現對游標顏色的動態修改。
對於編輯框下劃線顏色的修改,可以通過在`styles`主題中增加`control`配色,通常涉及在`app`模塊下的`style.xml`文件中定義相關樣式,以實現對`EditText`下劃線顏色的統一調整。
另外,按鈕的顏色統一處理,可以通過代碼動態創建`Shape`(例如使用`GradientDrawable`),然後根據需要調整其樣式屬性,最終將此`Shape`應用到`Button`或`TextView`的背景上,實現顏色一致性。
總結而言,通過封裝工具類和合理的代碼設計,可以較為方便地實現編輯框游標顏色的動態修改,同時考慮整體界面風格的統一性,提高代碼的復用性和維護性。
在實踐過程中,可能遇到一些限制或失效的情況,如特定版本的Android系統對某些反射操作的限制。此時,可以考慮通過`style`文件統一配置或探索其他更通用的方案,例如創建一個自定義的繼承`EditText`的控制項,通過其配置來統一所有相關控制項的樣式,從而簡化實現過程。
❹ Android中怎麼將一個edittext里的文本傳到另一個edittext中
edittext控制項有監聽事件,在事件中獲取第一個edittext中的字元串,然後用setText方法顯示到第二個edittext中,這樣邊輸入邊顯示。
❺ Android EditText當輸入文字換行後,如何讓EditText的高度也隨之適應整個文字的高度呢
我也遇到同樣問題,以下是我解決問題方法,僅供參考。
默認EditText設置warp-content就可以,但是我一直不可以,最終發現是布局有問題,因為在editText中設置了gravity="center_vertical",所以一直被截一半,導致顯示不全,後來我改成了layout_gravity="center_vertical" 就可以了,這是我全部的代碼,我設置了最多字數,你可以不限制
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:background="@color/white">
<TextView
style="@style/style_left_title_light_color"
android:layout_width="80dp"
android:layout_height="45dp"
android:text="備注" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="right"
android:background="@color/white"
android:textSize="16dp"
android:textColor="@color/colorPayBtn"
android:textColorHint="@color/colorLightGray"
android:hint="請填寫備注"
android:maxLength="50" />
</LinearLayout>
style:
<style name="style_left_title_light_color">
<item name="android:layout_height">match_parent</item>
<item name="android:gravity">center_vertical</item>
<item name="android:textSize">16dp</item>
<item name="android:textColor">@color/gray</item>
</style>
❻ Android中EditText獲得焦點後馬上又失去了,可能是什麼造成的呢
中EditText獲得焦點後馬上又失去了有以下幾種情況:
EditText處在一個可以滾動的控制項中,例如ListView等,當得到焦點後軟體鍵盤會彈出,這個時候滾動控制項會重繪,因此會失去焦點。
EditText注冊了焦點事件,得到焦點後將焦點轉向了其它控制項。
EditText禁止了獲取焦點。
❼ Android中的EditText中,輸入信息時,怎麼能讓游標停靠在輸入的信息的右側而不是左側呢
先設置android:gravity="right"然後在.java程序中,在每次輸出字元之後(text.setText(str);)重新設置游標位置:text.setSelection(str.length());
❽ android EditText hint的位置設置
EditText文本的位置設置是通過gravity屬性來設置的
android:gravity="right" 表示右邊
可選值:
left 左邊
right右邊
top上邊
botton下邊
center居中
多個值可以同時使用,例如: android:gravity="top|right" 表示右上