传递焦点或点击儿童EditText

时间:2018-01-05 18:39:35

标签: android android-layout user-experience

我正在尝试创建一个布局,其中包含一个Parent LinearLayout,一个子相对布局,它包含标签TextView和Error TextView以及另一个Child EditText。

当点击Parent LinearLayout或标签时,我希望聚焦Child EditText。到目前为止,我尝试了以下内容:

  1. 机器人:labelFor =" @ + ID / account_number_input"在父布局中
  2. 添加android:duplicateParentState =" true"到EditText并使Parent LinearLayout可焦点和可点击
  3. 还尝试了android:descendantFocusability =" afterDescendants"在可聚焦的情况下,在父线性阵列上。
  4. 似乎没有达到预期的效果。

    以上是示例代码。我有多个类似的项目,都需要自定义标签和错误部分。

            <LinearLayout
                android:id="@+id/account_number_input_layout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                style="@style/EditTextLinearLayout">
    
                <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
    
                    <TextView
                        android:id="@+id/account_number_label"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="@string/add_account_number_label"
                        android:labelFor="@+id/username_input"
                        android:layout_alignParentStart="true"
                        android:layout_toStartOf="@+id/account_number_error"
                        style="@style/EditTextLabel"/>
    
                    <TextView
                        android:id="@+id/account_number_error"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignBaseline="@+id/account_number_label"
                        android:layout_alignParentEnd="true"
                        style="@style/EditTextError"/>
    
                </RelativeLayout>
    
                <EditText
                    android:id="@+id/account_number_input"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:hint="@string/add_account_number_hint"
                    style="@style/EditTextInput"/>
    
            </LinearLayout>
    

1 个答案:

答案 0 :(得分:1)

您可以尝试在需要关注DOMContentLoaded事件的视图上调用requestFocus()。 例如:

onClick()