是否有一种方便的方式在多个活动中显示相同的选项菜单选项?重复使用选项菜单代码
示例:在我的应用程序中,我以三种方式之一显示电视指南。
- 七天指南(TabActivity 7个选项卡)
- 所有通道 '现在显示'(ListActivity)
- 的节目今天开始时间(活动 - 可以很容易地改为ListActivity)
对于在TabActivity
选项菜单,代码很简单...
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
menu.clear();
inflater.inflate(R.menu.gv_options_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.view:
...
...
}
}
。b目前看来我需要将它复制/粘贴到另外两个我不喜欢的活动中。如果我将选项菜单代码更改为一个,我还需要为其他两个选项执行此操作。
我能想到的唯一的选择是我有一个“助手”类(POJO)到我可以添加的方法和传递context
成以允许使用getMenuInflator()
方法和其他方法的我能通过的结果item.getItemId()
进入处理与开关案件。
什么是使用相同的选项菜单有多个活动的正常方式?
因为事实证明我忘了7天指南活动的标签内容实际上是ListActivitys - 我已经将'今天的所有节目...'活动(我的问题中的第3个)更改为也是ListActivity并定义了一个基类,三者现在都扩展了。无法看到树林的那些时刻之一。谢谢。 – Squonk