我的Activity中有一个EditText和一个TextView.我想在Activity启动时将焦点设置在TextView上.我使用了以下代码:
TextView myTextView = (TextView) findViewById(R.id.my_text_vew);
myTextView.setFocusable(true);
myTextView.setOnClickListener(this);
myTextView.requestFocus();
Run Code Online (Sandbox Code Playgroud)
但代码不起作用.EditText始终在活动开始时获得焦点.
有人可以帮忙吗?
谢谢.
Rom*_*Guy 13
使用触摸屏启动活动时,这是预期的.在"触摸模式"下,只有几个视图(EditText和ListView)可以获得焦点.如果使用轨迹球启动应用程序,您将看到对TextView的关注.您所看到的是正确和预期的结果.
LiT*_*Tle 12
我现在遇到了你的问题.也许2年后你找到了解决方案.但是我在这里写的是将来会遇到的其他人.你唯一要做的就是去AndroidManifest.xml,找到Activity你想要这种行为,并添加它android:windowSoftInputMode="stateHidden".因此,在Activity您触摸EditText对象之前,将显示无键盘的开头.
小智 11
如果还有人想知道,您可以在布局xml中使用以下内容,使textview在触摸模式下可聚焦:
android:focusableInTouchMode="true"
Run Code Online (Sandbox Code Playgroud)
小智 7
为了请求焦点TextView的需要设置focusable="true"和focusableInTouchMode="true"如下:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Heading"
android:textSize="20sp"
android:textStyle="bold"
android:focusable="true"
android:focusableInTouchMode="true">
<requestFocus />
</TextView>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
48546 次 |
| 最近记录: |