我在目录/ res / menu /
中创建了一个文件option_menu.xml :.我创建了一个包含以下代码的文件menu.java:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.option_menu, menu);
return true;
}
我可以将此代码用于我的菜单吗?(在menu.java中?
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.nelp:
help();
return true;
case R.id.quit:
quit();
default:
return super.onOptionsItemSelected(item);
}
}
我的应用程序包含4个java文件
我希望在任何活动中都可以访问该菜单。
提前谢谢
答案 0 :(得分:7)
如果希望在多个活动中运行相同的代码,则可以创建一个派生自Activity的基类,然后从新的基类派生自己的Activity类。这段代码将进入该类。
public class ActivityBase extends Activity {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.option_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.nelp:
help();
return true;
case R.id.quit:
quit();
default:
return super.onOptionsItemSelected(item);
}
}
}
您的活动来自ActivityBase:
public class MyActivity extends ActivityBase { ...