如何在Eclipse中的android中创建菜单?

时间:2015-03-09 15:13:23

标签: android

美好的一天 我想为我的Android应用程序创建一个菜单,并在我的java文件中使用此函数:

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
        // TODO Auto-generated method stub
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
 }

但R.menu在R.java文件中并不存在。 请帮我。 感谢

2 个答案:

答案 0 :(得分:0)

它可能是两种情况之一。

首先,你真的没有这个文件夹和文件,所以你必须创建它。如果文件夹menu和int文件夹res中不存在创建文件夹menu,则创建文件main.xml,如下所示:

<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=".MainActivity">
    <item android:id="@+id/action_settings"
          android:title="@string/action_settings"
          android:orderInCategory="100"
          app:showAsAction="never"/>
</menu>

或者您没有在班级中导入R课程。您必须在package

下面添加它
  package your.package;

  import your.package.R;

此外,您必须构建项目,您可以自动取消设置构建。检查如下图所示。如果未选择此选项,只需进行设置即可。

enter image description here

答案 1 :(得分:0)

  1. 在您的res文件夹中创建一个菜单文件夹,并在其中放入一个menu.xml文件。
  2. 添加一些项目:

    <?xml version="1.0" encoding="utf-8"?>
    <menu xmlns:android="http://schemas.android.com/apk/res/android" >
    
    <item android:id="@+id/DeleteAccount"
    android:alphabeticShortcut="d"
    android:title="@string/deleteAccount"/>
    
    <item android:id="@+id/Help"
    android:alphabeticShortcut="i"
    android:title="@string/instructions"/>
    
    <item android:id="@+id/LogOut"
    android:alphabeticShortcut="l"
    android:title="@string/logout"/>
    
    </menu>
    
  3. 在您想要菜单的活动中添加代码:

    public boolean onCreateOptionsMenu(Menu menu){
    super.onCreateOptionsMenu(menu);
    MenuInflater mi= getMenuInflater();
    mi.inflate(R.menu.menu, menu);
    return true;
    }
    
    public boolean onOptionsItemSelected(MenuItem item){
    switch (item.getItemId()){
    case R.id.DeleteAccount:
        //open new activity for exemple
        return true;
    case R.id.Help:
        return true;
    case R.id.LogOut:
        return true;
    }
    
    return super.onOptionsItemSelected(item);
    

    }

  4. 希望这有帮助!