簡體   English   中英

Android - 菜單項無法解析為onOptionsItemSelected()中的類型

[英]Android - Menu Item cannot be resolved to a type in onOptionsItemSelected()

我創建了一個簡單的活動(帶有一個菜單)並嘗試添加菜單項,但是當他們試圖在onOptionsItemSelected()方法中實際給它們一些功能時它們沒有出現。 我不確定為什么它不起作用,因為我在主要活動的菜單中做了完全相同的事情並且它工作得很好。 例如,當鍵入android.R.id.add_screen_submit_button時,它不會被識別為現有。 如果我強行輸入並留下“add_screen_submit_button無法解析或不是字段”的消息出現。 菜單也在正確的文件夾中(我實際上只是在創建活動時保持原樣)。 提前致謝。

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item
    android:id="@+id/add_screen_submit_button"
    android:orderInCategory="4"
    android:showAsAction="always"
    android:title="@string/add_screen_ok"
    android:icon="@drawable/accept_icon" />

<item
    android:id="@+id/add_screen_cancel_button"
    android:orderInCategory="5"
    android:showAsAction="always"
    android:title="@string/add_screen_cancel"
    android:icon="@drawable/cancel_icon" />

</menu>

這是代碼

public class AddActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add);
    // Show the Up button in the action bar.
    //setupActionBar();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.add_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:
        NavUtils.navigateUpFromSameTask(this);
        return true;
    case android.R.id.add_screen_submit_button:
        Toast.makeText(this, "Map Selected", Toast.LENGTH_SHORT).show();
        break;  
    default:
        break;
    }
    return super.onOptionsItemSelected(item);
}

}

更改

android.R.id.home:

R.id.home:

和另一個一樣。

android.R用於sdk資源, R.id.some_id用於你創建的id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM