【发布时间】:2015-05-10 05:30:41
【问题描述】:
背景
我正在为应用添加一些材料设计风格,因此我为操作栏和状态栏选择了不同的颜色。
问题
为此,应用程序的主题是“Theme.AppCompat.Light.DarkActionBar”,并添加了这个来隐藏操作栏,因为我需要将其作为工具栏处理:
我使用过的主题:
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="windowActionModeOverlay">true</item>
</style>
我使用的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/activity_app_list__toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:theme="?attr/actionBarTheme"
tools:ignore="UnusedAttribute"/>
</LinearLayout>
代码:
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
_toolbar=(Toolbar)findViewById(R.id.activity_app_list__toolbar);
setSupportActionBar(_toolbar);
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getMenuInflater().inflate(R.menu.menu_main,menu);
return super.onCreateOptionsMenu(menu);
}
由于某种原因,我得到了这种行为:
- 操作项和溢出项的子菜单为黑色。
- 点击搜索动作项时,溢出的项是白色的。
我想自定义这些弹出菜单,以便它们保持一致。
我尝试过的
我试过用这个:
<item name="actionOverflowMenuStyle">@style/OverflowMenu</item>
...
<style name="OverflowMenu" parent="Widget.AppCompat.Light.PopupMenu.Overflow">
</style>
但它根本没有帮助。
问题
有人知道如何处理吗?这是支持库中的错误吗?
对我来说它看起来是这样的,所以我已经报告了它here,包括一个示例项目。
【问题讨论】:
-
你的意思是你想要一个 Light Overflow 菜单,而其他人都在 Dark 中?
标签: android android-actionbar android-support-library popupmenu overflow-menu