我很难理解我发现的独特行为。 我有一个只有ListView的布局,其中的项目布局是一些文本& EDITTEXT。 在屏幕上显示这样的对话会导致意外行为 - 键盘在对焦时不会弹出。 我奇怪地发现,如果我在对话框的布局中添加另一个元素,问题就解决了。
对话框布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/listView"
/>
<!-- patch. otherwise, EditText within listview wont pop keyboard. weird, right? -->
<EditText
android:layout_width="wrap_content"
android:visibility="gone"
android:layout_height="wrap_content" />
</LinearLayout>
项目布局:
..
...
....
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:ems="5"
android:maxEms="5"
android:editable="true"
android:numeric="integer"
android:id="@+id/purchaseAmount" />
....
...
..
有人可以解释一下这种行为吗?
答案 0 :(得分:0)
也许ListView没有焦点。您可以通过稍微修改xml来确保这一点。
<ListView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/listView">
<requestFocus/>
</ListView>