5

样式是我对 android 平台知识进行改进的地方。鉴于我整个早上都在尝试进行简单的更改并且无法实现。

我想更改操作栏中溢出菜单的样式。我已经能够更改背景颜色并添加动画,以便在单击时它会淡化为选定的颜色。但是对于我的生活,我无法更改文本颜色。

下面是两张截图,一张使用 Theme.Sherlock,另一张使用 Theme.Sherlock.Light。

Theme.Sherlock - 这是我自定义的当前设置。我想要的是溢出(又名 android:popupmenu)在全息主题中(如下所示),理想情况下我可以更改文本颜色。

主题.夏洛克

Theme.Sherlock.Light - 这个主题显示了我想看到的溢出菜单的样式。但是,如以红色突出显示的那样,溢出按钮的颜色是错误的,并且此主题还绘制了一条水平线。

Theme.Sherlock.Light

我不知道使用弹出问题更改 Theme.Sherlock 或使用溢出图标和线条问题更改 Theme.Sherlock.Light 是否最好/更容易。该应用程序是“轻”主题,因此选项二可能是长期更好的选择,但是我会接受可以通过更改任一主题来解决问题的答案。

ps 在哪里可以找到更改主题/样式的属性列表,自动完成在 eclipse 中非常不完整。

更新

这实际上是原生操作栏的更新,因为我回到了同样的问题,但不再支持 2.3 或更低版本。

<style name="AppTheme" parent="android:Theme.Holo.Light">
  <item name="android:actionOverflowButtonStyle">@style/OverFlow</item>
</style>

<style name="OverFlow" parent="@android:style/Widget.Holo.ActionButton.Overflow">
  <item name="android:src">**Insert your icon here**</item>
</style>
4

4 回答 4

3

这个答案可能来得太晚了,但对于那些可能偶然发现这个问题的人来说。我发现您能够更改溢出的背景颜色很有趣。我发现这非常难以弄清楚,而更改文本非常简单。只需覆盖android:itemTextAppearance自定义主题中的值。

<item name="android:itemTextAppearance">@style/your_new_text_appearance</item>

<style name="your_new_text_appearance">
    <item name="android:textColor">@color/red</item>
</style>
于 2012-11-19T16:52:25.940 回答
2

简单地执行以下操作:

1 . 在您的应用主题样式的 theme.xml 中添加此项:

<item name="popupMenuStyle">@style/PopupMenu</item>

2 . 在 styles.xml 添加这个新样式:

<style name="PopupMenu" parent="@style/Widget.Sherlock.Light.ListPopupWindow">
   <item name="android:textSize">14sp</item>
</style>

在样式中,您可以根据需要覆盖文本大小或其他参数。

于 2014-08-19T09:19:39.447 回答
2

我对 ActionBarSherlock 不熟悉,但是您可以在硬盘上的文件夹中找到标准的溢出图标

path\to\android\android-sdk\platforms\android-api-level\data\res\drawable-resolution 

他们被称为ic_menu_moreoverflow_normal_holo_dark.pngic_menu_moreoverflow_normal_holo_light.png

或者,您可以在此处在线找到它们。

我相信左圆也是可绘制的。看看里面res\drawable

于 2012-07-30T13:21:25.170 回答
1

尝试在Android 操作栏样式生成器的帮助下覆盖 Theme.Sherlock 的样式

于 2012-08-04T08:56:29.210 回答