Хотите перегрузить стиль кнопки - PullRequest
1 голос
/ 13 декабря 2011

Я хочу перегрузить то, как выглядит андроид Button, за исключением того, что я хочу перегрузить только один атрибут, то есть android:background. Я знаю, что могу написать что-то вроде:

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

Где parent="???" указывает, какой стиль я наследую. Мой вопрос заключается в том, какой стиль я должен наследовать, чтобы я получал все из стиля кнопок Android по умолчанию для кнопок и просто определял новый фон.

Ответы [ 2 ]

1 голос
/ 01 июля 2012

Это в основном для будущих посетителей, я нашел решение проблемы:

<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.xml и themes.xml, чтобы проверить все стили, используемые Android для данной версии платформы.

1 голос
/ 13 декабря 2011

Я использовал стиль для кнопок без указания родительского атрибута

<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>

Я думаю, вам может быть достаточно определить свой стиль без "родителя".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...