我有一个Save MenuItem。这具有onOptionsItemSelected(MenuItem item)
功能。单击“保存”菜单时会触发它。但是,当用户尝试导航到另一个活动而不保存时,我想明确地调用此函数。
那么基本上如何从另一个函数调用此onOptionsItemSelected(MenuItem item)
?
答案 0 :(得分:3)
将您在此方法中编写的所有代码中的所有代码保存起来,只需复制并粘贴到您创建的方法中即可。
onOptionsItemSelected(MenuItem item){
switch(item.getItemId()){
case R.id.save:
saveMe();
break;
}
}
private void saveMe(){
// write your save code here
}
现在,当用户导航到另一个活动时,您可以调用此方法
答案 1 :(得分:1)
如果用户尚未保存,请使用名为showSaveMenu()
的函数并在其中显示保存菜单。从活动的每个可能退出点调用此函数,即onBackPressed()
或从您开始其他活动的任何地方以及onOptionsItemselected()
....
答案 2 :(得分:0)
只需调用invalidateOptionsMenu()。