Как нарисовать треугольную фигуру, прикрепленную к прямоугольнику? - PullRequest
1 голос
/ 07 июля 2019

Я новичок в разработке векторных рисунков в Android.

Я хотел бы спроектировать следующим образом, но не уверен, как это сделать

enter image description here

Я попробовал следующий фрагмент кода

<item>
    <rotate
        android:fromDegrees="-45"
        android:pivotX="0%"
        android:pivotY="0%"
        android:toDegrees="-45">
        <shape android:shape="rectangle">
            <solid android:color="#ffffff" />
            <stroke
                android:width="1dp"
                android:color="#fffff" />

            <corners
                android:bottomRightRadius="@dimen/dim_200dp"
                android:bottomLeftRadius="@dimen/dim_50dp"
                android:topRightRadius="@dimen/dim_50dp"
                android:topLeftRadius="@dimen/dim_50dp"></corners>
        </shape>
    </rotate>
</item>

Но я получил только следующий результат

enter image description here

Пожалуйста, помогите мне получить решение

1 Ответ

2 голосов
/ 07 июля 2019

Я сделал несколько 9-патч-картинок, соответствующих вашим потребностям.Используя этот чертеж, вы можете размещать каждый из них на экране в соответствии с вашими требованиями:

triangle_bg.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:width="90dp"
        android:height="160dp"
        android:bottom="137dp">
        <nine-patch android:src="@drawable/top_bg"/>
    </item>
    <item
        android:width="90dp"
        android:height="60dp"
        android:top="137dp">
        <nine-patch android:src="@drawable/bottom_bg"/>
    </item>
</layer-list>

Вы можете загрузить чертежи здесь .Исходный файл PSD, использованный для создания 9-патчей, также доступен здесь .

Окончательный результат будет выглядеть следующим образом: Preview

Надеюсь, это поможет.

...