Android:如何在弹出菜单底部创建EditText字段?

Android:如何在弹出菜单底部创建EditText字段?,android,xml,menu,Android,Xml,Menu,我的代码中有一个弹出菜单视图,我希望EditText视图是它的选项之一,这样用户就可以从选择现有文件的同一菜单中创建新文件。根据这篇文章: 无法将EditText视图用作弹出菜单项 我的问题是,对于不能将EditText声明为菜单项,是否有解决方法?也许,创建一个ListView并将Popupmenu和EditText视图声明为子视图 下面是我尝试过的代码,但正如预测的那样,生成了一个弹出菜单,没有可见的EditText字段 <?xml version="1.0" encoding="ut

我的代码中有一个弹出菜单视图,我希望EditText视图是它的选项之一,这样用户就可以从选择现有文件的同一菜单中创建新文件。根据这篇文章: 无法将EditText视图用作弹出菜单项

我的问题是,对于不能将EditText声明为菜单项,是否有解决方法?也许,创建一个ListView并将Popupmenu和EditText视图声明为子视图

下面是我尝试过的代码,但正如预测的那样,生成了一个弹出菜单,没有可见的EditText字段

<?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字段的可见性,用户可以在该字段中命名文件。我将为您提供正确的回答,以供您响应。谢谢