java - 带有设置按钮的默认操作栏

标签 java android dialog android-actionbar

虽然我是android开发的新手,但最近我一直在尝试在Android Studio提供的默认ActionBar中添加一个设置按钮(如下图所示)。但是,我标记的所有教程都是从将应用程序主题更改为: android:theme="@style/Theme.APpCompat.Light.NoActionBar"

有什么方法可以避免更改主题而只需在默认 ActionBar 中添加该设置吗?

ActionBar that Android documentation suggests

最佳答案

您可以通过将菜单扩展到工具栏来做到这一点。 在您的 java 类中重写此方法。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.your_custom_menu,menu);
    return true;
}

您的自定义菜单应如下所示:

<?xml version="1.0" encoding="utf-8"?>

>
<item
    android:id="@+id/night_mode"
    android:title="?attr/theme_text"
    app:showAsAction="never"
    android:icon="?attr/theme_icon"/>
<item
    android:id="@+id/action_about"
    android:title="@string/about_text"
    app:showAsAction="never"
    android:icon="?attr/about_icon"/>
<item
    android:id="@+id/action_logout"
    android:title="@string/action_logout_text"
    app:showAsAction="never"
    android:icon="?attr/logout_icon"/>

以下是有关菜单的更多信息:https://developer.android.com/guide/topics/ui/menus

关于java - 带有设置按钮的默认操作栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51678099/

相关文章:

android - “FirebaseAnalytics.Param.SIGN_UP_METHOD”无法在控制台中保存 'value' 和 'Event name`

android - 这个对话框会泄漏内存吗?

android - 如何在对话框上应用默认主题

java - 如何将JSON数据存储在Arraylist中?

java - 如何在 Java 中使用查找命令

java - 使用 java SecureRandom 类创建随 secret 码

java - 如何摆脱 "Failed to resolve attribute at index 1: TypedValue{t=0x2/d=0x7f01005e a=-1}"

java - 使用接口(interface)而不是稍后实现它的原因

Android 数据绑定(bind) SetSupportActionBar

javascript - Shadowbox - 如何切换或替换内容?如何关闭和打开另一个对话框?