如何在我的情况下只围绕两个角落

时间:2017-11-24 10:51:20

标签: android android-layout android-drawable

我创建了一个圆角可绘制资源round_corner_bg.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#FFFFFF"/>
    <stroke android:width="3dp" android:color="#B1BCBE" />
    <corners android:radius="10dp"/>
    <padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" />
</shape>

我将其应用到我的LinearLayout

<LinearLayout ...>
    android:background="@drawable/round_corner_bg"
...

工作正常。然而,它四舍五入所有四个角,我怎样才能使它只围绕左上角和右上角?

5 个答案:

答案 0 :(得分:2)

试试这个

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#FFFFFF" />
    <stroke
        android:width="3dp"
        android:color="#B1BCBE" />
    <corners android:topLeftRadius="10dp" android:topRightRadius="10dp"
        android:bottomLeftRadius="0dp" android:bottomRightRadius="0dp"/>
    <padding
        android:bottom="0dp"
        android:left="0dp"
        android:right="0dp"
        android:top="0dp" />
</shape>

<强>输出

enter image description here

答案 1 :(得分:1)

更改以下内容:

<corners android:radius="10dp" />

要:

<corners
    android:topLeftRadius="10dp"
    android:topRightRadius="10dp" />

答案 2 :(得分:1)

您可以使用角标记,如下所示

<corners android:topLeftRadius="10dip" android:topRightRadius="10dip"/>

答案 3 :(得分:0)

您可以这样使用:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item>
        <shape  android:shape="rectangle">
            <!-- you can use any color you want -->
            <solid android:color="@color/colorPrimary" />
            <corners android:bottomLeftRadius="0dp" android:bottomRightRadius="0dp"
                android:topLeftRadius="10dp" android:topRightRadius="10dp"/>
            <stroke android:width="0.6dp" android:color="@color/white" />
        </shape>

    </item>

</selector>

答案 4 :(得分:0)

只需替换

<corners android:radius="10dp"/> 

<corners android:topRightRadius="10dp" android:topLeftRadius="10dp"
        android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" />

根据您想要的方式更改值