got*_*ube 1 xml eclipse android android-layout
我在RelativeLayout中有一些EditText视图.第一个正确地获得焦点,但是当用户在键盘上单击"完成"时,它通常不会将焦点发送到用户期望的视图.假设"完成"按钮使用FOCUS_FORWARDID,我试图通过使用如下android:nextFocusForward属性来修复此行为:
<EditText
android:id="@+id/editTextName"
...
android:nextFocusForward="@id/editTextNameColour" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/editTextNameColour"
...
android:nextFocusForward="@id/editTextBackgroundColour" />
<EditText
android:id="@+id/editTextBackgroundColour"
... />
Run Code Online (Sandbox Code Playgroud)
它没有编译,因为Eclipse给我一个错误消息,如:"错误:错误:找不到与给定名称匹配的资源(在'nextFocusForward',值为'@id/editTextNameColour')".
我知道名称是正确的,因为我从Eclipse的下拉列表中选择了它,并且所有文件都已保存.
Android Developers Reference说这EditText是正确的类型(a View).
如果有比使用android:nextFocusXxx属性更好的方法,包括在Java代码中执行它,那也没关系.
我不愿意通过使用一个来解决这个问题LinearLayout.
另外,我是对的,"完成"按钮使用了FOCUS_FORWARD?
谢谢
解决方案:我需要使用@+id...而不是@id因为我引用了稍后在代码中声明的对象; 并且键盘似乎使用FOCUS_DOWN而不是FOCUS_FORWARD.
| 归档时间: |
|
| 查看次数: |
431 次 |
| 最近记录: |