5 простых способов создать закругленные границы в Kotlin с помощью XML

В этой записи блога мы рассмотрим различные методы создания закругленных границ в Kotlin с использованием XML. Закругленные границы могут повысить визуальную привлекательность пользовательского интерфейса вашего приложения и сделать его более приятным для глаз. Мы обсудим пять простых методов с примерами кода, которые помогут вам легко добиться закругленных границ. Итак, приступим!

Метод 1: использование атрибута background.
Самый простой способ создать закругленные границы в XML — использовать атрибут backgroundв XML-файле макета вашего представления. Вы можете определить произвольную рисуемую фигуру и установить ее в качестве фона вашего представления. Вот пример:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#FFFFFF"/>
    <corners android:radius="10dp"/>
</shape>

Метод 2: использование атрибута cardCornerRadius.
Если вы используете карточный вид Material Design, вы можете легко создать закругленные границы, установив атрибут cardCornerRadius. Этот атрибут управляет угловым радиусом представления карты и придает ему закругленный вид. Вот пример:

<com.google.android.material.card.MaterialCardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardCornerRadius="10dp">

    <!-- Your card content here -->

</com.google.android.material.card.MaterialCardView>

Метод 3: использование пользовательского фонового рисунка
Вы также можете создать собственный XML-файл с возможностью рисования фона и установить его в качестве фона вашего представления. Этот метод обеспечивает большую гибкость, поскольку вы можете дополнительно настроить внешний вид границы. Вот пример:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#FFFFFF"/>
    <stroke android:color="#000000" android:width="2dp"/>
    <corners android:radius="15dp"/>
</shape>

Метод 4: использование изображения с девятью участками
Другой способ добиться закругленных границ — использование изображения с девятью участками. Изображение с девятью исправлениями — это растровый ресурс с изменяемым размером, который автоматически масштабирует свое содержимое в соответствии с желаемым размером. Чтобы создать эффект закругленной границы, вы можете создать изображение из девяти фрагментов со скругленными углами и установить его в качестве фона вашего изображения.

Метод 5: использование пользовательского представления
Если ни один из вышеперечисленных методов не соответствует вашим требованиям, вы можете создать собственное представление и переопределить его метод onDrawдля программного рисования закругленных границ. Этот метод позволяет вам полностью контролировать внешний вид границы. Вот пример:

class RoundedBorderView(context: Context, attrs: AttributeSet) : View(context, attrs) {

    private val paint = Paint().apply {
        color = Color.BLACK
        style = Paint.Style.STROKE
        strokeWidth = 5f
        isAntiAlias = true
    }

    override fun onDraw(canvas: Canvas) {
        val rect = RectF(0f, 0f, width.toFloat(), height.toFloat())
        val cornerRadius = 10f
        canvas.drawRoundRect(rect, cornerRadius, cornerRadius, paint)
    }
}

В этой записи блога мы рассмотрели пять простых способов создания закругленных границ в Kotlin с использованием XML. Мы обсудили использование атрибута background, атрибута cardCornerRadiusдля представлений карточек Material Design, пользовательских рисунков фона, изображений с девятью патчами и создания собственного представления. Используя эти методы, вы можете легко добавить закругленные границы в пользовательский интерфейс вашего приложения, повысив его визуальную привлекательность и придав ему более изящный вид.