【发布时间】:2015-12-25 19:55:32
【问题描述】:
我的代码中有一个 PopupMenu 视图,我希望 EditText 视图成为它的选项之一,以便用户可以从他们选择现有文件的同一菜单中创建一个新文件。根据这篇文章:Android : Display an EditText in a menu 不能将 EditText 视图用作 PopupMenu 项。
我的问题是,是否有解决方法无法将 EditText 声明为菜单项?也许,创建一个 ListView 并将 Popupmenu 和 EditText 视图声明为子视图?
下面是我尝试过的代码,但正如预测的那样,生成了一个没有可见 EditText 字段的 Popupmenu。
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="wrap_content">
<item android:id="@+id/new_track"
android:title="+ create new track"/>
<EditText
android:id="@+id/search"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/search_hint"
android:inputType="textCapWords"
android:imeOptions="actionSend" />
</menu>
我建议的代码如下所示:
<?xml version="1.0" encoding="utf-8"?>
<ListView
<menu xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="wrap_content">
<item android:id="@+id/new_track"
android:title="+ create new track"/>
</menu>
<EditText
android:id="@+id/search"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/search_hint"
android:inputType="textCapWords"
android:imeOptions="actionSend" />
</ListView>
最好的方法是什么?
【问题讨论】: