EditText选项卡顺序

时间:2012-03-13 19:16:54

标签: android android-edittext

我有一个由LinearLayout组成的布局,其垂直方向包含多个EditTexts。每个EditTexts的虚拟键盘都有一个" next"按钮。按下"下一步"按钮将光标移动到它下面的EditText。

然而,在这些EditTexts中间的某处,我添加了另一个LinearLayout,这个是水平的,里面有几个EditTexts。这使我有几个垂直堆叠的EditTexts,然后在一行上相互水平的几个EditTexts,然后在下面垂直堆叠更多的EditTexts。

Tab键顺序像以前一样开始,但当它到达水平LinearLayout的第一个EditText时,点击" next"按钮不会移动到右侧的下一个EditText。它会向右跳过两个并向下移动到下面的EditText。

如何实现我想要的标签顺序?

I've attached an image, a true work of art really, of the order I want

2 个答案:

答案 0 :(得分:39)

使用android:nextFocusDown =“你的下一个id编辑文本”。示例:

    ....
    <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal">
    <EditText
        android:id="@+id/editText1"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:nextFocusDown="@+id/editText2" />
    <EditText
        android:id="@+id/editText2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    </LinearLayout>
    ....

答案 1 :(得分:15)

使用XML标签nextFocusDown / Forward / etc。 Documentation