Android:如何在弹出菜单底部创建EditText字段?
我的代码中有一个弹出菜单视图,我希望EditText视图是它的选项之一,这样用户就可以从选择现有文件的同一菜单中创建新文件。根据这篇文章: 无法将EditText视图用作弹出菜单项 我的问题是,对于不能将EditText声明为菜单项,是否有解决方法?也许,创建一个ListView并将Popupmenu和EditText视图声明为子视图 下面是我尝试过的代码,但正如预测的那样,生成了一个弹出菜单,没有可见的EditText字段Android:如何在弹出菜单底部创建EditText字段?,android,xml,menu,Android,Xml,Menu,我的代码中有一个弹出菜单视图,我希望EditText视图是它的选项之一,这样用户就可以从选择现有文件的同一菜单中创建新文件。根据这篇文章: 无法将EditText视图用作弹出菜单项 我的问题是,对于不能将EditText声明为菜单项,是否有解决方法?也许,创建一个ListView并将Popupmenu和EditText视图声明为子视图 下面是我尝试过的代码,但正如预测的那样,生成了一个弹出菜单,没有可见的EditText字段 <?xml version="1.0" encoding="ut
<?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>
我认为您需要创建RelativeLayout
,然后设置每个元素在队列中的位置
<?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"/>
<RelativeLayout>
<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"
android:layout_alignParentBottom="true"/> //this line put edittext at bottom
</RelativeLayout>
</menu>
//这一行将编辑文本放在底部
编辑:在对这个特定问题进行了多次搜索之后,我只能说:不,你不能这样做。您只能创建一个菜单项
,它将调用一个特定的片段,或者将您的工具栏更改为SearchView(如隐藏文本视图
、显示编辑文本和按钮
s)
对于第一个选项,请查看:
对于第二个选项:我尝试了这一点,但EditText小部件仍然没有以全屏模式显示我的应用程序运行,因此没有应用程序栏。我使用了一种解决方法,在弹出菜单中单击一个选项创建一个新文件,会更改一个单独的EditText字段的可见性,用户可以在该字段中命名文件。我将为您提供正确的回答,以供您响应。谢谢