你好,我正在使用 Sherlock
库在 Android 应用程序中实现 ActionBarTabs
,但我看到它正在将 ActionBarTabs
的文本设置为所有大写,所以我这样做是为了将文本设置为常规文本。
<style name="My.TabText.Style" parent="@style/Widget.Sherlock.ActionBar.TabText">
<item name="android:textAppearance">@android:style/TextAppearance.Medium</item>
<item name="android:textColor">@android:color/white</item>
<item name="android:textAllCaps">false</item>
<!-- <item name="android:ellipsize">none</item> -->
<item name="android:maxLines">1</item>
</style>
但我收到错误消息,指出 android:textAllCaps 需要 API 级别 14(当前最小值为 8)
。我该如何解决这个问题,以便它适用于所有 Android 版本。
提前致谢。
最佳答案
您需要转到您的 ActionBarSherlock 库,即您在项目中实现的库 去上这门课。
com.actionbarsherlock.internal.widget.CapitalizingButton
在该类中,您需要更改此行。
mAllCaps = appearance.getBoolean(R_styleable_TextAppearance_textAllCaps, true);
if (SANS_ICE_CREAM && mAllCaps && text != null)
到
mAllCaps = false;
if (SANS_ICE_CREAM && text != null)
它正在做的是将 android:textAllCaps
的默认值更改为 false
这对类有点 hack
关于android - 夏洛克 : android:textAllCaps requires API level 14 (current min is 8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24200343/