在Android的onCreateOptionsMenu方法中,可以通過調(diào)用菜單項(xiàng)的setVisible方法來控制菜單項(xiàng)的可見性。首先在onCreateOptionsMenu方法中創(chuàng)建菜單項(xiàng)并設(shè)置它們的可見性,然后根據(jù)需要在其他地方動(dòng)態(tài)地更改菜單項(xiàng)的可見性。
以下是一個(gè)示例代碼:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
MenuItem menuItem = menu.findItem(R.id.action_settings);
menuItem.setVisible(false); // 設(shè)置菜單項(xiàng)不可見
return true;
}
// 在某個(gè)地方動(dòng)態(tài)地更改菜單項(xiàng)的可見性
public void updateMenuItemVisibility(boolean isVisible) {
invalidateOptionsMenu(); // 通知系統(tǒng)重新創(chuàng)建菜單
MenuItem menuItem = menu.findItem(R.id.action_settings);
menuItem.setVisible(isVisible); // 設(shè)置菜單項(xiàng)可見或不可見
}
在updateMenuItemVisibility方法中,可以根據(jù)需要傳入true或false來控制菜單項(xiàng)的可見性。調(diào)用invalidateOptionsMenu方法通知系統(tǒng)重新創(chuàng)建菜單以更新菜單項(xiàng)的可見性。