Android 选项导航到其他活动时,菜单停止显示

Android 选项导航到其他活动时,菜单停止显示,android,tabactivity,android-optionsmenu,Android,Tabactivity,Android Optionsmenu,我的结构如下: 我的问题是,每当我从活动1、2或3转到子活动并返回到活动,选项菜单就会停止出现(无论是onCreateOptions菜单还是onPrepareOptions菜单)。我的猜测是,这是因为当调用子活动时,活动会停止,然后当我返回到它们时,活动不会重新创建(onCreate不会被调用) 有没有办法在活动恢复时(在onResume中)强制调用oncreateoptions菜单 更新 我知道现在发生了什么。问题是,选项菜单是从选项卡活动调用的,而不是从其下的活动调用的。我需要运行活动的o

我的结构如下:

我的问题是,每当我从活动1、2或3转到子活动并返回到活动选项菜单就会停止出现(无论是
onCreateOptions菜单
还是
onPrepareOptions菜单
)。我的猜测是,这是因为当调用子活动时,活动会停止,然后当我返回到它们时,活动不会重新创建(
onCreate
不会被调用)

有没有办法在活动恢复时(在
onResume
中)强制调用
oncreateoptions菜单

更新


我知道现在发生了什么。问题是,选项菜单是从
选项卡活动
调用的,而不是从其下的活动调用的。我需要运行活动的
onCreateOptions菜单
/
onPrepareOptions菜单
,而不是
选项卡activity

我只需在我需要的每个活动中分别调用onCreateOptions菜单,然后分别更改每个活动的onCreateOptions菜单的上下文,以反映该情景活动已恢复,其OnCreateOptions菜单也已恢复…希望这有助于

公共布尔OnCreateOptions菜单(菜单菜单){ super.onCreateOptions菜单(菜单)


是我使用的…如果这有帮助的话,可以查看我的问题“append.text at cursor in fragment”…我非常需要帮助

解决了我的问题。问题是选项菜单是从
选项卡活动
调用的,而不是从它下面的活动调用的。我所做的是:

在我的
选项卡活动中

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.my_view, menu);
    return true;
}

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    menu.clear();
    inflater.inflate(R.menu.my_view, menu);
    return true;
}

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    return getCurrentActivity().onMenuItemSelected(featureId, item);
}
在活动中:

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        return super.onPrepareOptionsMenu(menu);
    }
@Override
    public boolean onOptionsItemSelected(MenuItem item) {
// Do my work in the Activity
}

我只是在每个活动中使用它,我想让菜单选项说如果我在活动1中,我的菜单选项反映活动2,3当我在活动2中,我的菜单选项反映活动1,3等等,但是在每个有菜单的活动中,你必须输入代码,当你在活动之间切换时,你将始终有一个菜单……它对我有效,我没有知道这是否是最好的方法,但它对我有效

,以及如何获取菜单对象(
onCreateOptions菜单(菜单)
)?抱歉,这不会添加任何新信息。我可以使选项菜单第一次出现,在活动外导航时出现问题
@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        return super.onPrepareOptionsMenu(menu);
    }
@Override
    public boolean onOptionsItemSelected(MenuItem item) {
// Do my work in the Activity
}