如何设置LinearLayout中的按钮,如ListView

时间:2010-03-12 13:11:01

标签: xml android styles android-styles

我有一个垂直方向的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行背景?

1 个答案:

答案 0 :(得分:1)

我自己想通了:

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