gpt4 book ai didi

android - Android中所有 Activity 中的相同选项菜单

转载 作者:IT老高 更新时间:2023-10-28 21:48:12 25 4
gpt4 key购买 nike

我的项目中有 10-15 项 Activity 。我希望在所有 Activity 中都有选项菜单。那么他们是否有任何方式我们可以在一个地方做到这一点,并且它出现在所有 Activity 中。

另外,我想隐藏一些选项菜单。那么,是否有可能或者我必须在所有 Activity 中编写选项菜单代码。

问候

苏尼尔

最佳答案

创建一个扩展 Activity 的类(例如 BaseActivity),并覆盖 onCreateOptionsMenuonOptionsItemSelected 函数。

public class BaseActivity extends Activity {

// Activity code here

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

@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.item:
// do what you want here
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}

现在,在其他 15-16 个 Activity 中,您应该扩展 BaseActivity,而不是扩展 Activity。

public class FooActivity extends BaseActivity { 

// Activity code here

}

这样,您的所有 Activity 都会派生选项菜单。对于您希望禁用选项菜单的 Activity ,您可以在该特定 Activity 中再次覆盖它。

public class BarActivity extends BaseActivity { 

// Activity code here

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Do Nothing
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Do Nothing
}
}

希望它不会在 list 文件中给您带来问题。

关于android - Android中所有 Activity 中的相同选项菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3270206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com