Радиус при создании границы дается изнутри, а не снаружи? - PullRequest
0 голосов
/ 29 ноября 2018

Я использую ниже XML для создания границы для TextView.

<?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/dark_gray" />
        </shape>
    </item>
    <item android:bottom="1dp">
        <shape android:shape="rectangle">
            <solid android:color="@color/dark_gray" />
        </shape>
    </item>
    <item
        android:bottom="2dp"
        android:top="2dp">
        <shape android:shape="rectangle">
            <solid android:color="@color/dark_gray" />
        </shape>
    </item>
    <item
        android:bottom="2dp"
        android:left="2dp"
        android:right="2dp"
        android:top="2dp">
        <shape android:shape="rectangle">
            <solid android:color="@color/white" />
            <corners android:radius="@dimen/padding_4dp"/>
        </shape>
    </item>
</layer-list>

Когда я даю радиус как <corners android:radius="@dimen/padding_4dp"/>, он дает радиус углам, но изнутри, а не снаружи.Таким образом, в результате углы остаются острыми снаружи.Как показано ниже: enter image description here

Я что-то не так делаю?

Ответы [ 2 ]

0 голосов
/ 29 ноября 2018

Для оставшихся двух предметов также добавьте угловой радиус.

0 голосов
/ 29 ноября 2018

Другие элементы, которые вы добавили в layer-list: missing corners, добавьте их как показано ниже

<?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/dark_gray" />
    </shape>
</item>
<item android:bottom="1dp">
    <shape android:shape="rectangle">
        <solid android:color="@color/dark_gray" />
        <corners android:radius="@dimen/padding_4dp"/>
    </shape>
</item>
<item
    android:bottom="2dp"
    android:top="2dp">
    <shape android:shape="rectangle">
        <solid android:color="@color/dark_gray" />
        <corners android:radius="@dimen/padding_4dp"/>
    </shape>
</item>
<item
    android:bottom="2dp"
    android:left="2dp"
    android:right="2dp"
    android:top="2dp">
    <shape android:shape="rectangle">
        <solid android:color="@color/white" />
        <corners android:radius="@dimen/padding_4dp"/>
    </shape>
</item>
...