Android为已有背景的按钮添加右边框

时间:2015-01-05 18:50:20

标签: android

我有以下XML drawable来定义我的按钮状态的不同背景颜色:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@android:color/white" android:state_selected="true"></item>
    <item android:drawable="@android:color/transparent" android:state_pressed="true"></item>
    <item android:drawable="@android:color/transparent"></item>
</selector>

如何在按钮右侧添加白色边框(高度略低于按钮本身)以充当分隔符?

1 个答案:

答案 0 :(得分:1)

就个人而言,我在Activity或Fragment的布局中添加了一个View。

    <LinearLayout
        android:orientation="horizontal"
        android:background="@color/my_button_bar_color"
        ... >

        <Button
            ... />

        <View
            android:layout_width="1px"
            android:layout_height="20dp"
            android:gravity="center_vertical"
            android:background="@color/my_button_bar_divider_color" />

        <Button
            ... />

    </LinearLayout>

或者,您可以使用右侧的边框创建drawable。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@color/my_border_color" />
        </shape>
    </item>
    <item android:right="1dp">
            <solid android:color="@color/my_main_shape_color" />
    </item>
</layer-list>