Ⅰ android 自定義的dialog,edit text 不能獲得焦點,彈出軟鍵盤。
1、首先自定義布局
2、把自定義布局放入dialog中顯示
3、通過自定義布局查找對應的edittext組件
final View DialogView = a .inflate ( R.layout.loand, null);//1、自定義布局
//創建對話框
AlertDialog dlg = new AlertDialog.Builder(loand.this)
.setTitle("登錄框")
.setView(DialogView)//設置自定義對話框的樣式,2、自定義布局放入dialog中顯示
.setPositiveButton("登陸", //設置"確定"按鈕
new DialogInterface.OnClickListener() //設置事件監聽{
public void onClick(DialogInterface dialog, int whichButton){editText1 =(EditText) DialogView.findViewById(R.id.editText1);
editText2 =(EditText) DialogView.findViewById(R.id.editText2);//3、過自定義布局查找對應的edittext組件
String id = editText1.getText().toString();
String password = editText2.getText().toString();
Ⅱ android 中如何限制 EditText 最大輸入字元數
在Android中,通過使用android:maxLength屬性可以限制EditText的最大輸入字元數。例如,如果設置android:maxLength="5",那麼用戶只能輸入最多5個漢字、數字或英文字母。
除了android:maxLength,還有其他一些屬性用於控制TextView的寬度和行數。android:ems屬性設置TextView的寬度為N個字元的寬度,而android:maxEms則設置最大寬度為N個字元,二者同時使用時android:maxEms會覆蓋android:ems。同樣,android:minEms設置最小寬度為N個字元。
在設置行數方面,android:lines設置文本的行數,即使第二行沒有數據也會顯示兩行。而android:maxLines則設置文本的最大顯示行數,與layout_width或width結合使用時,超出部分會自動換行,但超出行數將不會顯示。最後,android:minLines與android:lines類似,設置文本的最小行數。
使用這些屬性,開發者可以靈活地控制EditText和TextView的顯示效果,以滿足不同的應用需求。例如,可以限制用戶輸入的字元數量,防止輸入過長的文本導致布局問題。
需要注意的是,這些屬性主要用於控制TextView的顯示方式,而不是直接限制輸入內容的合法性。如果需要進一步驗證輸入內容是否符合業務邏輯要求,還需要配合使用其他驗證手段。
總之,通過合理使用這些屬性,開發者可以更加精細地控制用戶界面,提升用戶體驗。
Ⅲ Android中的EditText中,輸入信息時,怎麼能讓游標停靠在輸入的信息的右側而不是左側呢
先設置android:gravity="right"然後在.java程序中,在每次輸出字元之後(text.setText(str);)重新設置游標位置:text.setSelection(str.length());
Ⅳ 創建一個android界面,每行一個組件,依次放置一個EditText組件,一個TextVie
您可以使用Android Studio中的XML布局文件來創建界面。以下是一個示例代碼:
該代碼創建了一個包含兩行的線性布局,每行包含一個線性布局和一個組件。第一行包含一個EditText組件,第二行包含一個TextView組件。
Ⅳ android 一個布局裡面有三個EditText默認的游標是停在第一個上面的怎麼讓游標默認在第二個或第三個呢
在請求出現游標是,也就是在獲取焦點時:
editText.requestFocus();
清除游標,也就是失去焦點:
editText.clearFocus();
第一個設置失去焦點,第二或者第三個設置獲得焦點試試
另外還有:
使游標移動到指定的位置:
editText.setSelection(2);
輸入的參數是個整數
讓EditText不出現游標:
editText.setCursorVisible(false);
Ⅵ 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>