关于EditText获取焦点,出现光标网上有很多方法,但是发现在有些情况下无论如何也不起作用。是那种情况不起作用。就是在Activity中有Viewpager,里面有多个Fragment,点击按钮进行Fragment之间跳转的时候。无论是设置EditText那个属性都无效。为什么???
因为在一个Activity中只有一个View可以获得焦点,虽然XML中设置了EditText获取焦点,但是在点击btn的时候,焦点发生了转移,需要在跳转到目的Fragment后,从新给EditText设置焦点。
相关代码如下:
<EditText
android:id="@+id/et"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="20dp"
android:textSize="16sp"
android:lineSpacingExtra="4dp"
android:background="@null"
android:hint="@string/contentHint"
android:textCursorDrawable="@drawable/shape_cursor_color"
android:focusable="true"
android:focusableInTouchMode="true">
<requestFocus/>
</EditText>
#在新Fragment中从新获取焦点
newFragment.contentEt.requestFocus()