Android Menu: How to dynamically change menu with condition in code -


i'm trying change item in optionmenu, depending on if selected name (from spinner) in activity, tried use invalidateoptionsmenu() inside spinner.setonitemselectedlistener , in onprepareoptionsmenu set condition, error:

"java.lang.classcastexception: com.android.internal.view.menu.actionmenuitemview cannot cast android.view.menuitem"

my code:

public class mainactivity extends activity {     private long projectid;     public void oncreate(bundle savedinstancestate) {        super.oncreate(savedinstancestate);        datasource = new statementdatasource(this);        datasource.open();         setcontentview(r.layout.activity_main);         //setting spinner simplecursoradapter        ...        public void onitemselected(adapterview<?> parent, view view, int position, long id){            projectid = id;            //trigger optionsmenu recreate            invalidateoptionsmenu();       }  }  @override public boolean onprepareoptionsmenu(menu menu) {     private string phonenumber = datasource.getphonenumber(projectid);     //checking if selected name has phone number in database     if (!phonenumber.isempty()){ //values might null or empty         menu.finditem(r.id.callbutton).setvisible(true);     } else {         menu.finditem(r.id.callbutton).setvisible(false);     }     return super.onprepareoptionsmenu(menu);   } 


Comments

Popular posts from this blog

node.js - Mongoose: Cast to ObjectId failed for value on newly created object after setting the value -

[C++][SFML 2.2] Strange Performance Issues - Moving Mouse Lowers CPU Usage -

ios - Possible to get UIButton sizeThatFits to work? -