android - Android:无法自定义操作菜单样式
问题描述
我们无法在我们的应用程序中设置操作菜单项的样式,尝试以不同的方式设置样式。我们正在使用 androidx 库。请让我们知道我们可能做错了什么。感谢你的帮助。
<style name="MenuTextStyle" parent="TextAppearance.AppCompat.Widget.ActionBar.Menu">
<item name="android:textColor">#F0F</item>
<item name="android:textStyle">normal</item>
<item name="android:textSize">10sp</item>
</style>
<style name="AppThemeMm" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item> //This works
<item name="colorPrimaryDark">@color/colorPrimaryDark</item> //This works
<item name="colorAccent">@color/colorAccent</item> //This works
<item name="android:actionMenuTextAppearance">@style/MenuTextStyle</item> //This does not work
</style>
解决方案
尝试这样的事情
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="android:dropDownListViewStyle">@style/actionMenuDropDown</item>
<item name="android:listPreferredItemHeightSmall">50dp</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="actionMenuDropDown" parent="@android:style/Widget.Holo.ListView.DropDown">
<item name="android:divider">#5A5252</item>
<item name="android:dividerHeight">1sp</item>
<item name="android:listSelector">#FFEA00</item>
<item name="android:background">#AC2299</item>
<item name="android:textColor">#443A43</item>
</style>
如果您使用 PopupOverlay,文本颜色不会改变。但是您可以像这样覆盖文本颜色
<style name="AppTheme.MyPopupOverlay" parent="ThemeOverlay.AppCompat.Dark" >
<item name="android:textColor">#AC5532</item>
</style>
并像这样使用它
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.MyPopupOverlay" />
推荐阅读
- c# - Unity3D Photon调用本地播放器断开前的方法
- javascript - 猫头鹰旋转木马全高给出空白页
- json - 将 xquery 结果存储为 json
- c# - 初始化数组时出现 StackOverflow 异常
- html - 按钮中的属性之间没有空格
- vim - Vim 背景颜色不同
- java - Android Q - 通过 NFC 启动隐私更改活动
- r - 缩放函数返回:FUN(x, aperm(array(STATS, dims[perm]), order(perm)), ...) 中的错误
- python - 找不到具有您请求的功能的树生成器:xml
- docker - 在 docker 中使用 wine 进程而不附加到 shell