在我的 XML 布局中,除其他外,我有两个EditText
元素和几个按钮。XML 看起来像这样(大部分内容已删除,只剩下相关部分)
<RelativeLayout>
<RelativeLayout android:id="@+id/entry_id">
<Button
android:id="@+id/btn_select"
layout_alignParentRight="true" />
<EditText
android:id="@+id/txt_id"
android:layout_toLeftOf="@id/btn_select"
anddroid:nextFocusDown="@id/txt_extras" />
<Button
android:id="@+id/btn_quality"
android:layout_below="txt_id" />
</RelativeLayout>
<EditText
android:id="@+id/txt_extras"
android:layout_below="@id/entry_id" />
</RelativeLayout>
这会产生类似这样的布局:
+-----------------------------------------------+
|+---------------------------------------------+|
|| ||
|| +----------------------+ +-------------+ ||
|| | First text field | | Button | ||
|| +----------------------+ +-------------+ ||
|| ||
|| +----------------+ ||
|| | Another button | ||
|| +----------------+ ||
|| ||
|+---------------------------------------------+|
| |
| +-------------------------------------------+ |
| | Second text field | |
| +-------------------------------------------+ |
+-----------------------------------------------+
请注意,这不是整个布局,其中还有很多不同的视图,但我只关心这些。使用 s的原因RelativeLayout
是因为它们实际上可以按照客户想要的方式布置视图。
现在,我需要在定义第二个文本之前使用第一个文本和按钮定义块,以便我可以指定第二个文本位于该块下方。但是,我在第一个文本字段中出现错误,因为我指的是nextFocusDown
属性中的第二个文本字段,因为第二个文本字段尚未定义。这变成了第 22 条问题。有什么方法可以让 eclipse/lint/whatever 明白它所抱怨的字段实际上不存在,就在下面几行?也就是说,是否有可能让它从整体上、作为一个整体而不是逐行查看文件?
或者,当在软键盘上按下“下一步”时,是否有任何其他方法可以指定我希望焦点转到第二个文本字段而不是第二个按钮?