我很难实现自定义样式的操作栏标签:我需要使标签(我指的是按钮)在正常和选定状态下使用自定义图形。
我已经能够使用以下方法消除所有本地样式:
<style name="customActionBarTabStyle">
<item name="android:background">#00000000</item>
</style>
然后使用Tab.setIcon()来使选项卡看起来符合我的需求,但我需要它们能够响应切换(通过在两个可绘制对象之间切换 - 用于开和关状态)。
我尝试创建一个这样的可绘制选择器:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/btn_on" />
<item android:drawable="@drawable/btn_off" />
</selector>
但是选中后,选项卡并没有切换到按下模式。
另外,我尝试在TabListener.onTabSelected()和.onTabUnselected()中调用Tab.setIcon(),但也没有成功。
有人知道一个好的解决方案吗?
此外,我需要显示自定义视图而不是溢出菜单 - 我已经在谷歌上搜索了许多“提示”,要求重新考虑我的UI以“遵循Android方式”,但问题实际上是UI不是我的-它是客户的:)所以我真的很想找到一种绕过ActionBar的自定义缺点的方法。
非常感谢您提供任何建议。
<style name="customActionBarTabStyle"> <item name="android:background">#00000000</item> </style>
覆盖了默认的选项卡背景 - 为了摆脱本地下划线外观,选择器被绘制为选项卡图标覆盖在透明的选项卡背景上。这与 ActionBar 自己的背景无关 - 它存在并且在选项卡图标和透明的选项卡背景下绘制。 - Ivan Bartsov