如何在android中为垂直线形添加填充

时间:2016-09-26 13:00:33

标签: android android-drawable android-shape

我的视图有一个图层列表背景

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape>
        <solid android:color="@color/white"/>
        <corners android:radius="3dp"/>
        <stroke
            android:width="1dp"
            android:color="@color/warm_grey"/>
    </shape>
</item>
<item
    android:left="10dp"
    android:right="10dp">
    <shape
        android:shape="line">
        <stroke
            android:width="1.5dp"
            android:color="@color/blue"/>
    </shape>
</item>
<item
    android:bottom="10dp"
    android:top="10dp">
    <rotate
        android:fromDegrees="90"
        android:pivotX="50%"
        android:pivotY="50%"
        android:toDegrees="-90">
        <shape
            android:shape="line">
            <stroke android:width="1.5dp" android:color="@color/blue"/>
        </shape>
    </rotate>
</item>
</layer-list>

这里我尝试使用top,bottom,left和right属性为上面的行设置填充,它适用于水平线,但不适用于垂直线。

如何为垂直线形添加垂直填充?

2 个答案:

答案 0 :(得分:0)

这是创建在线按钮或任何视图形状的链接链接:http://angrytools.com/android/button/

以下代码如下:

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<corners
android:radius="14dp"
/>
<gradient
android:angle="45"
android:centerX="35%"
android:centerColor="#7995A8"
android:startColor="#E8E8E8"
android:endColor="#000000"
android:type="linear"
/>
<padding
android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp"
/>
<size
android:width="270dp"
android:height="60dp"
/>
<stroke
android:width="3dp"
android:color="#878787"
/>
</shape>

答案 1 :(得分:0)

在垂直线条的情况下左右尝试。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>
            <solid android:color="@color/light_blue"/>
            <corners android:radius="3dp"/>
            <stroke
                android:width="1dp"
                android:color="@color/warm_grey"/>
        </shape>
    </item>
    <item
        android:left="10dp"
        android:right="10dp">
        <shape
            android:shape="line">
            <stroke
                android:width="1.5dp"
                android:color="@color/blue"/>
        </shape>
    </item>
    <item
        android:left="10dp"
        android:right="10dp"
        >
        <rotate
            android:fromDegrees="90"
            android:pivotX="50%"
            android:pivotY="50%"
            android:toDegrees="-90">
            <shape
                android:shape="line">
                <stroke android:width="1.5dp" android:color="@color/blue"/>
            </shape>
        </rotate>
    </item>
</layer-list>

这对我有用。