Как мне стиль кнопок в LinearLayout, как ListView - PullRequest
1 голос
/ 12 марта 2010

У меня есть вертикально ориентированная LinearLayout с несколькими кнопками:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical">  
    <Button android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/bt1" android:text="Button 1"></Button> 

    <Button android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/bt2" android:text="Button 2"></Button>

    <Button android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/bt3" android:text="Button 3"></Button> 

    <Button android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/bt4" android:text="Button 4"></Button> 
</LinearLayout>

и я хочу, чтобы этот «список» кнопок наследовал текущий стиль для элементов ListView. Это мой текущий статус таблицы стилей. Стиль CKButton применяется к теме деятельности.

<style name="CKButton" parent="android:style/Widget.Button">
    <item name="android:textSize">21sp</item>
    <item name="android:layout_margin">0dip</item>
    <!--<item name="android:background">@drawable/button_background</item>-->
    <item name="android:textColor">@color/button_text_normal</item>
    <item name="android:padding">10dip</item>
    <item name="android:gravity">left|center_horizontal</item>
</style>

Как вы видите, я пытался нарисовать фон кнопки сам, но в зависимости от темы по умолчанию системы цвет фона меняется, и поэтому определение статического цвета не вариант. Есть ли способ наследовать фон строки ListView Row по умолчанию в этих кнопках?

1 Ответ

1 голос
/ 15 марта 2010

Я сам разобрался:

<style name="CKButton" parent="android:style/Widget.Button">
    <item name="android:textSize">21sp</item>
    <item name="android:layout_margin">0dip</item>
    <item name="android:background">@android:drawable/menuitem_background</item>
    <item name="android:textColor">@color/button_text_normal</item>
    <item name="android:padding">10dip</item>
    <item name="android:gravity">left|center_horizontal</item>
</style>
...