LinearLayout с закругленными углами и цветом фона - PullRequest
0 голосов
/ 25 апреля 2019

CompileSdkVersion 26, если это важно.Я хочу создать LinearLayout с закругленными углами и цветом фона.

Я создал 2 LinearLayout, один с углами и один с цветом, но их формы не соответствуют моим ожиданиям.

Код отдеятельность

<LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@color/whitegrey"
            android:layout_marginTop="340dp"
            android:id="@+id/layout"
            android:layout_marginStart="10dp">
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/custom_border"
            android:orientation="vertical"
            android:padding="6dp"
            android:textColor="@color/black">
    ...
    </LinearLayout>
    </LinearLayout>

custom_border.xml:

<?xml version="1.0" encoding="UTF-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
        <corners android:radius="20dp"/>
        <padding android:left="8dp" android:right="8dp" android:top="8dp" android:bottom="8dp"/>
        <stroke android:width="2dp" android:color="#444444" />
    </shape>

На самом деле есть округленная граница, а сзади прямоугольная раскладка с целевым цветом.Я хочу заполнить целевым цветом только то, что находится внутри границ.Есть ли способ установить цвет заливки, желательно в custom_border.xml?

Вот что у меня на данный момент:
Here, what I have at the moment

Здесь, чего я хочу добиться:
Here, what I want to achieve

Вид с телефона, буквы слева обрезаются:
View from phone, the letters on the left are cut off

1 Ответ

0 голосов
/ 25 апреля 2019

Из примеров кода, которые вы нам предоставляете, мне не нужно иметь два LinearLayout.Требуется только макет с android:background="@drawable/custom_border".

Чтобы достичь ожидаемого результата, просто добавьте свойство <solid android:color="@color/whitegrey" /> к вашему custom_border.xml:

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <corners android:radius="20dp"/>
    <padding android:left="8dp" android:right="8dp" android:top="8dp" android:bottom="8dp"/>
    <stroke android:width="2dp" android:color="#444444" />
    <solid android:color="@color/whitegrey" />
</shape>

Если бы я могпомочь вам!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...