从操作栏菜单选项打开浮动上下文菜单
Open a float context menu from an action bar menu option
我想创建一个浮动上下文菜单,当用户点击操作栏中的特定选项时显示。这是我在白板上画的图。
我没有时间使用模型工具。我是 android 的初学者,但我正在对此进行一些研究。但是,我刚刚提出了我的操作栏。
我发现很多教程太复杂了,我跟不上。
开始编写此功能的好方法是什么?
无论如何我都会发布解决方案:)
请参阅在给定 link AlertDialogs
中将列表添加到警报对话框
在 menu.xml 中添加如下项目:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/menu_item"
android:icon="@drawable/ic_launcher"
android:title="menu_item"
app:showAsAction="always">
<menu>
<item
android:id="@+id/menu1"
android:title="menu1"/>
<item
android:id="@+id/menu2"
android:title="menu2"/>
</menu>
</item>
在 activity onOptionsItemSelected()
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
...
if (item.getItemId() == R.id.menu2)
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Submenu").setItems(new String[]
{
"Item1", "Item2", "Item3"
}, new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{//TODO
}
});
builder.show();
}
...
return super.onOptionsItemSelected(item);
}
这样就达到目的了!
我想创建一个浮动上下文菜单,当用户点击操作栏中的特定选项时显示。这是我在白板上画的图。
我没有时间使用模型工具。我是 android 的初学者,但我正在对此进行一些研究。但是,我刚刚提出了我的操作栏。
我发现很多教程太复杂了,我跟不上。 开始编写此功能的好方法是什么?
无论如何我都会发布解决方案:)
请参阅在给定 link AlertDialogs
中将列表添加到警报对话框在 menu.xml 中添加如下项目:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/menu_item"
android:icon="@drawable/ic_launcher"
android:title="menu_item"
app:showAsAction="always">
<menu>
<item
android:id="@+id/menu1"
android:title="menu1"/>
<item
android:id="@+id/menu2"
android:title="menu2"/>
</menu>
</item>
在 activity onOptionsItemSelected()
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
...
if (item.getItemId() == R.id.menu2)
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Submenu").setItems(new String[]
{
"Item1", "Item2", "Item3"
}, new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{//TODO
}
});
builder.show();
}
...
return super.onOptionsItemSelected(item);
}
这样就达到目的了!