使用请求焦点时,Scrollview内的EditText无法获得焦点

时间:2014-12-23 14:28:39

标签: android android-edittext android-scrollview

当我在scrollview中使用edittext时尝试使用edittext.requestFocus()时出现问题

任何人都可以帮忙

修改

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/add_listitem_layout"
android:layout_width="match_parent"
android:layout_height="@dimen/shared_list_icon_size"
android:background="@android:color/white"
android:gravity="center_vertical"
android:orientation="horizontal" >

<EditText
    android:id="@+id/list_item_name_textview"
    android:layout_width="0dp"
    android:layout_height="@dimen/shared_list_icon_size"
    android:layout_marginLeft="@dimen/larger_margin"
    android:layout_marginRight="@dimen/medium_margin"
    android:layout_weight="4"
    android:background="@color/white"
    android:gravity="center_vertical"
    android:hint="@string/add_new_item"
    android:singleLine="true"
    android:textColorHint="@color/yomi_gray_one">
</EditText>

<RelativeLayout
    android:layout_width="@dimen/shared_list_icon_size"
    android:layout_height="@dimen/shared_list_icon_size" >

    <ImageView
        android:id="@+id/add_list_item_imageview"
        android:layout_width="@dimen/shared_list_icon_size"
        android:layout_height="@dimen/shared_list_icon_size"
        android:padding="@dimen/medium_margin"
        android:src="@drawable/listitem_add_icon" />

    <ImageView
        android:id="@+id/close_list_item_imageview"
        android:layout_width="@dimen/shared_list_icon_size"
        android:layout_height="@dimen/shared_list_icon_size"
        android:padding="@dimen/medium_margin"
        android:src="@drawable/post_cancel" />
</RelativeLayout>

1 个答案:

答案 0 :(得分:1)

EditTextScrollview可能会有问题。 edittext焦点请求将尝试激活软键盘,这会影响您的滚动。所以你可能会得到焦点,然后滚动发生,滚动视图重新获得焦点...例如,edittext开始滚动屏幕,因此失去焦点。

您可能还有其他问题,但除非您处理它,否则您将面临在屏幕上放置编辑文字的问题,例如:

Android/Java: EditText focus moves whole layout, and only ScrollView should be

或以其他方式。