菜单按钮(三点)黑色,黑色操作栏 Android 4
Menu button (three points) black with black action bar on Android 4
我有一个很奇怪的问题。如果我 运行 我的应用程序在 Android 4 模拟器上,菜单按钮(三点)呈现为黑色,我的操作栏也是黑色的。然后,我看不到按钮,但我可以按下它并显示菜单。
如果我将模拟器更改为 Android 5 或更高版本,三个点将涂成灰色,然后我可以看到图标。
这是我的一部分 style.xml:
<style name="app_theme2" parent="@style/Theme.AppCompat.Light.NoActionBar">
<item name="colorAccent">@color/light_green_500</item>
<item name="android:colorActivatedHighlight">@color/light_green_500</item>
<item name="colorControlActivated">@color/light_green_500</item>
<item name="colorControlHighlight">@color/light_green_500</item>
<item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item>
</style>
<style name="MyActionButtonOverflow" parent="@android:style/Widget.Holo.ActionButton.Overflow">
<item name="android:textColorSecondary">@color/white</item>
</style>
我的活动是从 AppCompatActivity 扩展的,我添加了一个工具栏:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/black"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
在 activity 上:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mylayout);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
toolbar.setTitleTextColor(ContextCompat.getColor(ActivityMyActivity.this, R.color.my_white));
toolbar.setSubtitleTextColor(ContextCompat.getColor(ActivityMyActivity.this, R.color.my_white));
toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white_24dp);
getSupportActionBar().setTitle(getString(R.string.MyTitleofActivity));
我不知道为什么会这样。我用一个设备试了一下,我得到了同样的行为。在 Android 4 的设备上,按钮被隐藏(按颜色),但我可以使用它。在 Android 5 或更高版本的设备上,按钮涂成灰色,我可以看到它。
它的出现是由于您使用的上下文,
尝试使用 Classname.this
或 getApplicationContext
尝试从 AndroidManifest 更改您的 Activity 主题。并选择自定义颜色
尝试为您的 activity.
更改样式文件中的样式
查看参考 url:
我有一个很奇怪的问题。如果我 运行 我的应用程序在 Android 4 模拟器上,菜单按钮(三点)呈现为黑色,我的操作栏也是黑色的。然后,我看不到按钮,但我可以按下它并显示菜单。
如果我将模拟器更改为 Android 5 或更高版本,三个点将涂成灰色,然后我可以看到图标。
这是我的一部分 style.xml:
<style name="app_theme2" parent="@style/Theme.AppCompat.Light.NoActionBar">
<item name="colorAccent">@color/light_green_500</item>
<item name="android:colorActivatedHighlight">@color/light_green_500</item>
<item name="colorControlActivated">@color/light_green_500</item>
<item name="colorControlHighlight">@color/light_green_500</item>
<item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item>
</style>
<style name="MyActionButtonOverflow" parent="@android:style/Widget.Holo.ActionButton.Overflow">
<item name="android:textColorSecondary">@color/white</item>
</style>
我的活动是从 AppCompatActivity 扩展的,我添加了一个工具栏:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/black"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
在 activity 上:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mylayout);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
toolbar.setTitleTextColor(ContextCompat.getColor(ActivityMyActivity.this, R.color.my_white));
toolbar.setSubtitleTextColor(ContextCompat.getColor(ActivityMyActivity.this, R.color.my_white));
toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white_24dp);
getSupportActionBar().setTitle(getString(R.string.MyTitleofActivity));
我不知道为什么会这样。我用一个设备试了一下,我得到了同样的行为。在 Android 4 的设备上,按钮被隐藏(按颜色),但我可以使用它。在 Android 5 或更高版本的设备上,按钮涂成灰色,我可以看到它。
它的出现是由于您使用的上下文,
尝试使用 Classname.this
或 getApplicationContext
尝试从 AndroidManifest 更改您的 Activity 主题。并选择自定义颜色
尝试为您的 activity.
更改样式文件中的样式查看参考 url: