Есть ли способ, как создать полукруг как форму?

Я хочу создать специальный вид для моего приложения. Это вертикальная пунктирная линия и два полукруга сверху и снизу. Есть ли способ, как создать это как одну фигуру? Я сделал пунктирную линию, но я не могу сделать полукруг.

Это должно выглядеть так.

Пунктирная вертикальная линия:

<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android" android:fromDegrees="90" android:toDegrees="90">
    <shape
            android:shape="line">
        <stroke
                android:color="#777777"
                android:dashWidth="7dp"
                android:dashGap="5dp"
                android:width="2dp"/>
    </shape>
</rotate>

Я нашел, как кто-то пытался сделать полукруг, но это большой. Мне нужен только маленький круг. И это даже не круг.

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <corners
            android:bottomLeftRadius="100000dp"
            android:topLeftRadius="0dp"
            android:bottomRightRadius="100000dp"
            android:topRightRadius="0dp" />

    <solid android:color="#777777" />
</shape>

2 ответа

Решение

Создайте half_circle.xml файл под drawable с этой линией

<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="#8C9AEE"/>
    <size
    android:width="120dp"
    android:height="60dp"/>
   <corners
    android:topLeftRadius="60dp"
    android:topRightRadius="60dp"/>
</shape>

задавать half_circle.xml в качестве фона макета

вывод будет выглядеть так:

h ttps://stackru.com/images/2e6e7dc0c7774a6f3b6f00235b609708a8c8aa23.png

Вы можете нарисовать весь вид с помощью Canvas в Android. И используйте Path, чтобы определить, как это будет, и Paint, чтобы определить его цвет.

Другие вопросы по тегам