Создать закругленные углы на View - PullRequest
0 голосов
/ 04 июля 2019

Есть ли способ создать закругленные углы View внутри LinearLayout вместо использования shape?

<View
 android:layout_width="48dp"
 android:clickable="true"
 android:layout_height="48dp"
 android:background="#f55151" />

Ответы [ 2 ]

1 голос
/ 05 июля 2019

Если вы не хотите использовать форму, CardView - это самый простой способ: для более подробной информации обратитесь к официальным документам

. Сначала добавьте эту строку в ваши зависимости:

implementation 'com.android.support:cardview-v7:28.0.0'

затем используйте его следующим образом:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    ... >
    <!-- A CardView that contains a TextView -->
    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/card_view"
        android:layout_gravity="center"
        android:layout_width="200dp"
        android:layout_height="200dp"
        card_view:cardCornerRadius="4dp">

        <TextView
            android:id="@+id/info_text"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    </android.support.v7.widget.CardView>
</LinearLayout>

Здесь вы можете найти больше вариантов , таких как: радиус угла, высота, цвет фона и т. Д.

1 голос
/ 04 июля 2019

Вы можете использовать CardView, а внутри CardView вы можете создавать свои собственные представления. В CardView вы можете установить card_view: cardCornerRadius.

<androidx.cardview.widget.CardView
   xmlns:card_view="http://schemas.android.com/apk/res-auto"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   card_view:cardBackgroundColor="@color/yourColor"
   card_view:cardCornerRadius="6dp">

   <View
      android:layout_width="48dp"
      android:clickable="true"
      android:layout_height="48dp"
      android:background="#f55151" />

</androidx.cardview.widget.CardView>
...