如何避免重复样式项?

时间:2013-05-13 13:21:18

标签: android android-layout android-styles

如何避免以下示例中的重复样式项?

我的textSize 30sp风格为TextStyle

<style name="TextStyle">
     <item name="android:textSize">30sp</item>
</style>

我在下面使用的textSize 30sp样式。是否有任何方法适用textsize - 没有重复的风格写作?

<style name="bottomText">
    <item name="android:textSize">30sp</item>
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">150dp</item>
</style>

4 个答案:

答案 0 :(得分:1)

让一个Style从另一个继承:

 <style name="bottomText" parent="TextStyle">
      <item name="android:layout_width">fill_parent</item>
      <item name="android:layout_height">150dp</item>
  </style>

样式“bottomText”然后具有在“TextStyle”中定义的所有属性,但仍然可以在bottomText中覆盖。

答案 1 :(得分:1)

<style name="TextStyle">
    <item name="android:textSize">30sp</item>
</style>

<style name="bottomText" parent="@style/TextStyle">
  <item name="android:layout_width">fill_parent</item>
  <item name="android:layout_height">150dp</item>
</style>

<style name="boldText" parent="@style/bottomText">
  <item name="android:textStyle">bold</item>
</style>

另一种方法:

<style name="bottomText.BoldText">
  <item name="android:textStyle">bold</item>
</style>

在最后两种情况下,boldText继承自bottomText,后者定义android:layout_widthandroid:layout_height

答案 2 :(得分:0)

<style name="TextStyle">
        <item name="android:textSize">30sp</item>
   </style>

<style name="bottomText" parent="@style/TextStyle">
      <item name="android:layout_width">fill_parent</item>
      <item name="android:layout_height">150dp</item>
  </style>

让bootomText的样式继承TextStyle

http://developer.android.com/guide/topics/ui/themes.html#DefiningStyles

答案 3 :(得分:0)

从我所看到的,您不需要第二种样式,因为您需要在xml中设置layout_widthlayout_height。您可以在创建layout时设置该高度和宽度,然后使用style="@styles/TextStyle"。如果有这样的原因你不能这样做,请更好地解释问题