2012-05-07 87 views
1

我在android系統創建菜單重寫onCreateOptionsMenu方法,像這樣:設置檢查菜單

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    menu.add(0, 0, 0, "Blit").setCheckable(true); 
    return true; 

} 

public boolean onOptionsItemSelected(MenuItem item) { 
    if (item.getItemId() == 0) 
    { 
       somevar = !somevar; 
       item.setchecked(somevar); 

      } 
    } 

的問題是,菜單是從來沒有檢查......我怎樣才能讓我的菜單中選中?

+0

你可以給你更多的問題描述嗎? – Pinki

+0

@Pinki我想以編程方式設置一個菜單選中或取消選中,就像一個複選框... – opc0de

回答

0

當您調用onPrepareOptionsMenu時,您必須更新所有菜單項。

@Override 
public boolean onPrepareOptionsMenu(Menu menu) { 
    for (int i = 0; i < menu.size(); i++) { 
     MenuItem item = menu.getItem(i); 
     if (item.getItemId() == 0) 
      item.setChecked(somevar); 
    } 
    return super.onPrepareOptionsMenu(menu); 
} 
+0

仍然沒有結果 – opc0de

+0

哎呀,我的代碼有一個小錯誤。再試一次! –

+0

它仍然沒有顯示任何東西! – opc0de

0

對於你應該做this類型的你的菜單選中的菜單。然後你可以有可檢查的項目(無,全部,單)。