android - 禁用时 ActionBar 中的半透明图标 : only on my phone?

标签 android icons actionbarsherlock menuitem translucency

我在我的应用程序上使用 ActionBarSherlock,当我在 ActionBar 中禁用某些 MenuItem 时,图标在我的手机上变成半透明的(HTC One X 运行 Android 4.0.4),但我没有在任何其他手机上看到这种行为或模拟器。

我假设此行为不是 native ActionBar 的默认行为是否正确?不过我喜欢这个想法...它警告用户 MenuItem 由于某种原因未启用(在我的例子中,它是一个保存按钮,如果至少有一个字段未填充,它会禁用该按钮)。

我正在考虑为自己提供一个半透明图标,并在禁用 MenuItem 时手动设置它。这将适用于每个 Android 版本,无论是否为原生 ActionBar。问题是在我的手机上(或任何其他具有相同行为的手机),它会是半透明的两倍,我不希望这样。

关于如何正确实现这种效果有什么想法吗?

最佳答案

我认为问题出在主题上,您正在应用默认主题。因此,HTC 覆盖默认主题资源,我认为您必须创建一个自定义主题并将 item_background 更改为 sdk 资源上的默认主题。

<item name="selectableItemBackground">@android:drawable/item_background</item>

关于android - 禁用时 ActionBar 中的半透明图标 : only on my phone?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13073630/

相关文章:

android - ActionbarSherlock 列表导航 - 滚动到顶部/聚焦第一行

Android gradle项目在不同的目录树中编译项目

android - 如何在 searchView 中限制特殊字符和数字?

google-chrome-extension - Chrome 扩展程序 - 设置页面上的扩展程序图像

css - Fontello - 如何向现有元素添加字体?

python - 在 Tkinter 中设置图标

android - SherlockListActivity 没有 getSupportFragmentManager 方法

java - 这个 "1342177280"标志是干什么用的?

android - 需要身份验证。使用您的 Google 帐户登录

android - 如何在 Android 中让闹钟开始响铃监听器?