0

我有一个保存菜单项。这有一个onOptionsItemSelected(MenuItem item)功能。当我单击“保存”菜单时会触发它。但是,当用户尝试导航到另一个活动而不保存时,我想显式调用此函数。那么基本上我怎么onOptionsItemSelected(MenuItem item)能从另一个函数中调用它呢?

4

3 回答 3

3

将您在此方法中编写的所有代码执行一件事以保存只需复制并粘贴到您创建的方法中,例如

onOptionsItemSelected(MenuItem item){

    switch(item.getItemId()){
    case R.id.save:
       saveMe();
    break;
    }
}

private void saveMe(){
    // write your save code here
}

现在您可以在用户导航到另一个活动时调用此方法

于 2012-12-27T06:56:33.720 回答
1

showSaveMenu()如果用户尚未保存,则有一个名为并在其中显示保存菜单的函数。从活动的每个可能的退出点调用此函数,即onBackPressed()从您开始另一个活动的任何地方以及从onOptionsItemselected()....

于 2012-12-27T06:55:05.970 回答
0

只需调用 invalidateOptionsMenu()。

于 2016-11-09T04:54:08.497 回答