我的应用有一个操作栏,但没有菜单.xml.如何修改操作栏



您好,感谢您的阅读,

当我第一次制作我的项目时,Android Studio 提示我选择一个样板。我选择了空活动(没有 FAB 和其他的活动)。不过,我的应用程序有一个 ActionBar ,但它只显示名称。现在,我想修改该操作栏并添加一个菜单。我的java扩展AppCompatActivity,所以有一个操作栏。但是,与我之前在 eclipse 中的经验不同,我没有可以找到菜单 xml。

如何通过其他方式添加或修改操作?我可以手动添加一个吗?

谢谢!

1)

您需要创建(或修改,如果存在)菜单资源文件,/res/menu/main_menu.xml创建操作。

例如:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/action_refresh"
        android:showAsAction="always"
        android:icon="@drawable/ic_action_refresh"
        android:title="Refresh"/>
    <item
        android:id="@+id/action_settings"
        android:showAsAction="always"
        android:icon="@drawable/ic_action_setting"
        android:title="Settings">
    </item>
</menu> 

2) 覆盖活动中的onCreateOptionsMenu(),以允许膨胀 XML 中定义的操作:

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

3) 覆盖onOptionsItemSelected()以响应操作选择:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case R.id.action_refresh:
      Toast.makeText(this, "Refresh selected", Toast.LENGTH_SHORT).show();
      break;
    case R.id.action_settings:
      Toast.makeText(this, "Settings selected", Toast.LENGTH_SHORT).show();
      break;
    }
    return true;
}

最新更新