我在目录/ 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;
}
Run Code Online (Sandbox Code Playgroud)
我可以把这个代码放在我的菜单上吗?(在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);
}
}
Run Code Online (Sandbox Code Playgroud)
我的应用程序包含4个java文件
我希望在任何活动中都可以访问该菜单.
先感谢您
如果希望在多个活动中运行相同的代码,则可以创建一个派生自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);
}
}
}
Run Code Online (Sandbox Code Playgroud)
您的活动来自ActivityBase:
public class MyActivity extends ActivityBase { ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
490 次 |
| 最近记录: |