我使用了一种技术(http://united-coders.com/nico-heid/use-android-activitygroup-within-tabhost-to-show-different-activity) 开发一个应用程序,我有3个选项卡,每个选项卡都有自己的ActivityGroup。我有每个活动的菜单。但是当我按下菜单按钮时,菜单不会出现。在做了一些随机路径后,我发现如果我在ActivityGroup中实现onCreateOptionsMenu,那么只会出现菜单。我无法执行Activity的onCreateOptionsMenu。 请建议如何使用Activity菜单,因为我在单个ActivityGroup中有很多活动,并且在ActivityGroup中实现onCreateOptionsMenu不是处理这个问题的正确方法。
答案 0 :(得分:1)
以下是您如何使用它:
在您的ActivityGroup类onCreateOptionMenu()中调用当前Activity
的{{1}}即
onCreateOptionMenu()
并在您的个人public boolean onPrepareOptionsMenu(Menu menu)
{
Activity activity = getLocalActivityManager().getCurrentActivity();
return activity.onPrepareOptionsMenu(menu);
}
@Override
public boolean onPrepareOptionsMenu(Menu menu)
{
Activity activity = getLocalActivityManager().getCurrentActivity();
return activity.onPrepareOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected (MenuItem item)
{
Activity activity = getLocalActivityManager().getCurrentActivity();
return activity.onOptionsItemSelected(item);
}
Activity
如果你想要任何@Override
public boolean onCreateOptionsMenu(Menu menu)
{
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu)
{
return true;
}
@Override
public boolean onOptionsItemSelected (MenuItem item)
{
switch (item.getItemId())
{
case R.id.MENU_LOGOUT:
Dialog.showToast(this, "message");
return true;
case R.id.MENU_HELP:
break;
case R.id.MENU_ABOUT:
break;
}
return super.onOptionsItemSelected(item);
}
而没有Activity
只是覆盖这些方法
Menu