Android 如何在ViewSwitcher中的editText中获得焦点
我有一个带有很多ViewSwitcher的表单,可以用clic将TextView更改为EditText 问题是我必须clic 2次才能插入值:以下是屏幕截图: 好在没有经过第二个州 这是我的密码Android 如何在ViewSwitcher中的editText中获得焦点,android,android-edittext,focus,Android,Android Edittext,Focus,我有一个带有很多ViewSwitcher的表单,可以用clic将TextView更改为EditText 问题是我必须clic 2次才能插入值:以下是屏幕截图: 好在没有经过第二个州 这是我的密码 <TableRow android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vert
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|right"
android:text="Colonia:"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/android_blue" />
<ViewSwitcher
android:id="@+id/vs2"
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/txt_colonia"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:onClick="TextViewClicked"
android:paddingLeft="12dp"
android:text="Colonia"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/et_colonia"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:focusableInTouchMode="true"
android:text="Colonia 13"
android:textAppearance="?android:attr/textAppearanceLarge" />
</ViewSwitcher>
</TableRow>
尝试切换到编辑文本,然后格式化它
viewswitcher.showNext();
edittext.requestFocus();
edittext.setSelection(edittext.getText().length());
试试这个:
如果你在一个片段中
switcher.showNext();
edittext.requestFocus();
InputMethodManager inputMethodManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(edittext, 1);
如果你正在参加一项活动
switcher.showNext();
edittext.requestFocus();
InputMethodManager inputMethodManager = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(edittext, 1);
有点晚,但可能会帮助其他人
switcher.showNext();
edittext.requestFocus();
InputMethodManager inputMethodManager = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(edittext, 1);