想要超载Button风格

时间:2011-12-13 16:43:22

标签: android styles

我想重载android Button的外观,除了我想只重载一个属性,即android:background。我知道我可以这样写:

<style name="App_TextButtonStyle" parent="???">
    <item name="android:background">@drawable/filled_roundededges_nostroke</item>
</style>

parent="???"指定我继承的样式。我的问题是我应该继承哪种风格,我从按钮的Android默认样式中获取所有内容,然后定义新的背景。

2 个答案:

答案 0 :(得分:1)

我使用了按钮样式而没有指定“父”属性

<style name="BigButtonStyle">
  <item name="android:layout_width">wrap_content</item>
  <item name="android:layout_height">wrap_content</item>
  <item name="android:layout_gravity">center_horizontal</item>
  <item name="android:background">@drawable/backbutton</item> 
  <item name="android:textColor">#FFFFFF</item>
  <item name="android:textSize">8pt</item>
  <item name="android:textStyle">bold</item>
  <item name="android:layout_margin">10pt</item>
</style>

我认为你可以在没有“父母”的情况下定义你的风格就足够了。

答案 1 :(得分:1)

这主要是为了未来的访问者,我找到了解决问题的方法:

<style name="App_TextButtonStyle" parent="@android:style/Widget.Button">
    <item name="android:background">@drawable/filled_roundededges_nostroke</item>
</style>

@android:style/Widget.Button引用当前所选主题中按钮的默认样式。您还可以使用全息小部件按钮样式@android:style/Widget.Holo.Button(自api 11以来可用)。

您可能希望在<android-sdk-install-folder>/platforms/android-XX/data/res/values中查找文件styles.xmlthemes.xml,以查看Android用于给定平台版本的所有样式。