Android无法识别我的身份

时间:2015-08-11 09:18:05

标签: java android xml menu menuitem

我正在使用菜单开发应用程序。 该菜单包含2个项目,一个地图和一个设置属性 这是菜单语法:

<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" />
    <item android:id="+@id/action_maps"
        android:title="@string/action_map"
        app:showAsAction="never"/>
</menu>

我使用MainActivity中的onOptionsItemSelected(MenuItem item)方法来处理这个问题:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            Intent intent = new Intent(this, PreferenceActivity.class);
            startActivity(intent);
            return true;
        }

        if(id == R.id.action_maps){
            openPreferredLocationMap();
            return true;
        }

        return super.onOptionsItemSelected(item);
    }

现在问题是Android识别方法中的action_settings但他没有识别action_maps。为什么呢?

3 个答案:

答案 0 :(得分:4)

这是错误的

[
    { _id : ObjectId("db_created") , u_id : 8 , name : "H" , comment : [1,2] },
    { _id : ObjectId("db_created") , u_id : 7 , name : "G" , comment : [] },
    { _id : ObjectId("db_created") , u_id : 6 , name : "F" , comment : [1,2] },
    { _id : ObjectId("xxxxxx") , u_id : 5 , name : "E" , comment : [1,2,3] },
    { _id : ObjectId("yyyyyy") , u_id : 4 , name : "DD" , comment : [1] },
    { _id : ObjectId("zzzzzz") , u_id : 3 , name : "C" , comment : [1,2] },
    { _id : ObjectId("aaaaaa") , u_id : 2 , name : "B" , comment : [1,2] },
    { _id : ObjectId("bbbbbb") , u_id : 1 , name : "A" , comment : [1] },
]

试试这个

<item android:id="+@id/action_maps"
    android:title="@string/action_map"
    app:showAsAction="never"/>

问题是 + 符号应该在 @ 之后

答案 1 :(得分:0)

我删除了android:orderInCategory =“ 100”,并再次获得了ID

答案 2 :(得分:-1)

你不小心换了#34; +&#34;和&#34; @&#34;在菜单的action_map项目中