Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

android: changing option menu items programmatically

Is it possible to change the option menu items programmatically? Can anyone provide me with an example please?

Also, I want to disable certain items, so that they don't listen to the clicks, is it possible?

like image 275
Farhan Avatar asked Aug 20 '11 16:08

Farhan


2 Answers

For anyone needs to change the options of the menu dynamically:

private Menu menu;  // ...  @Override public boolean onCreateOptionsMenu(Menu menu) {     this.menu = menu;     getMenuInflater().inflate(R.menu.options, menu);     return true; }  // ...  private void hideOption(int id) {     MenuItem item = menu.findItem(id);     item.setVisible(false); }  private void showOption(int id) {     MenuItem item = menu.findItem(id);     item.setVisible(true); }  private void setOptionTitle(int id, String title) {     MenuItem item = menu.findItem(id);     item.setTitle(title); }  private void setOptionIcon(int id, int iconRes) {     MenuItem item = menu.findItem(id);     item.setIcon(iconRes); } 
like image 54
Eng.Fouad Avatar answered Oct 13 '22 00:10

Eng.Fouad


menu.xml

  <item      android:id="@+id/item1"     android:title="your Item">   </item> 

put in your java file

  public void onPrepareOptionsMenu(Menu menu) {      menu.removeItem(R.id.item1); } 
like image 27
Imdad Sarkar Avatar answered Oct 13 '22 00:10

Imdad Sarkar