【发布时间】:2016-04-12 19:50:58
【问题描述】:
我有个小问题!
在我的 styles.xml 文件中,我有
<style name="TextViewStyle" parent="android:Widget.TextView">
<item name="android:padding">20px</item>
<item name="android:background">#9cd0e8</item>
<item name="android:textColor">#254b7c</item>
<item name="android:textSize">18sp</item>
<item name="android:textStyle">bold</item>
</style>
在我的 activity_main.xml 中,我有
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:theme="@+styles/TextViewStyle"
android:text="Sample Text"/>
我想要做的是,在我的 Android 应用程序中,我计划在某个活动上放置许多具有相似属性的 TextView。我不是每次都为每个 TextView 实例编写这些“属性”,而是在 styles.xml 文件中将它们分组到一个样式中,并将每个 TextView 的主题设置为该样式。
它工作正常,可以做我想做的事,但只适用于 21 以上的 API!我的应用程序应该支持 API 级别 15 以上的设备。为什么我的方法不适用于较低的 API?
请尽快提供帮助。我需要尽快完成。
编辑
通过“工作”,我的意思是我在我的样式中设置的属性(填充、颜色等)按应有的方式出现在 TextView 上。然而,在较低的 API 中,TextView 看起来好像我没有在它们上应用任何属性。显示纯文本而不是样式文本。
【问题讨论】:
-
这两个版本有什么不同?例如,什么不起作用?
-
@ChrisStillwell 通过“工作”,我的意思是我在我的样式中设置的属性(填充、颜色等)应该出现在 TextViews 上。然而,在较低的 API 中,TextView 看起来好像我没有在它们上应用任何属性。显示纯文本而不是样式文本。
-
既然你已经有了资源文件,你就不需要
styles/TextViewStyle前面的“+”了。不确定这是否会为您解决问题,但值得一试。 -
@ChrisStillwell 不,这并没有解决我的问题。
标签: android textview android-theme android-styles