什么放入菜单项?

时间:2014-07-23 00:08:46

标签: java android xml

我想编写一个顶部有菜单的程序,该菜单有一个项目。 我希望当用户点击该项目时,会出现一个对话框,类似于此页面中的代码:http://www.mkyong.com/android/android-custom-dialog-example/ 但在这个页面上有一个按钮而不是菜单和一个项目。 为线 :

 final Context context;
    private Button button;
    button = (Button) findViewById(R.id.buttonShowCustomDialog); 

我写了两个

 final Context context;
    private Menuitem menuitem;
    menuitem = (MenuItem) findViewByID(R.id.addmenu1);

和这一个:

final Context context;
   private Menu menu;
   menu = (Menu) findViewByID (R.id.addmenu1);

但我得到“提供错误类型的资源标识符” 在这种情况下我应该把这里放什么?!

这是我的addmenu1.xml:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/add"
          android:icon="@drawable/plus"
          android:title="Adding"
          android:orderInCategory="100"
          android:showAsAction="always"
            />
</menu>

1 个答案:

答案 0 :(得分:1)

用于菜单和子菜单

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.example.MainActivity" >

<item
    android:id="@+id/menu_item_options"
    android:icon="@drawable/ic_config"
    android:title="@string/action_settings"
    app:showAsAction="ifRoom">
    <menu>
        <item
            android:id="@+id/action_settings"
            android:icon="@drawable/ic_config"
            android:orderInCategory="100"
            android:title="@string/action_settings"
            app:showAsAction="always"/>

    </menu>
</item>

创建菜单时,子菜单单击事件在活动中 例如:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            // showPoppup 
            return true;
        } 
        return super.onOptionsItemSelected(item);
    }