【问题标题】:EditText not allowing for editingEditText 不允许编辑
【发布时间】:2013-02-21 23:31:14
【问题描述】:

我有一个ListView,它有三行。最后两行有EditText 允许编辑的字段。我有下面这两个的xml:

<LinearLayout
    android:id="@+id/id_message_subject_edit"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_marginLeft="5dp"
    android:layout_marginRight="5dp"
    android:orientation="vertical" >

    <EditText
        android:id="@+id/id_message_details_subject"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="left"
        android:layout_margin="5dp"
        android:gravity="left"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="@color/BLACK"
        android:textSize="15sp" />

</LinearLayout>

由于某种原因,当我单击EditText 时,它只是失去了光标,但键盘仍然可见。我不确定,但它发生在两个盒子上。没有TouchListener 或任何其他听众。在 ListView 中放入我需要注意的有什么特别之处吗?

编辑

当我将以下内容放入 manifest.xml 文件时:

android:windowSoftInputMode="adjustPan"

我看到它可以工作......但是当文本低于键盘时,ListView 不会滚动。有没有办法处理这个用例?

【问题讨论】:

    标签: android android-listview android-edittext


    【解决方案1】:

    在 ListView 中放入有什么特别需要注意的地方吗?

    是的,请记住 ListView 想要处理焦点和点击事件,但现在你有一个 EditText 混合在一起。查看此question 的答案。

    但是,如果您的ListView 中只有 3 行,那么使用它确实不会获得太多收益。 ListView 旨在回收视图并在列表中有许多项目时非常有效。如果您只有几行,我建议使用 ScrollView 并将您的 Views(行)添加到其中,然后自己处理 onClick 事件(如果您的列表项是可点击的)。

    【讨论】:

    • 不能这样做,因为它以后可能会改变。但我取得了一些进展……只是还没有完成。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多