Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在ViewSwitcher中的editText中获得焦点_Android_Android Edittext_Focus - Fatal编程技术网

Android 如何在ViewSwitcher中的editText中获得焦点

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

我有一个带有很多ViewSwitcher的表单,可以用clic将TextView更改为EditText

问题是我必须clic 2次才能插入值:以下是屏幕截图:

好在没有经过第二个州

这是我的密码

<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);