Как нарисовать границу для imageview с помощью Coil в Android?

#android #imageview #border-image #circleimage #coil

#Android #imageview #граница-изображение #circleimage #coil

Вопрос:

Я использую «Coil» для создания кругового изображения. Я хочу нарисовать круговую границу для этого кругового изображения. Как это сделать с помощью Coil?

Здесь я загружаю изображение:

  binding.imageviewFaceDetectionSelfieCircle.load(R.drawable.ic_avatar) {
            transformations(CircleCropTransformation())
        }
 

Здесь изображение ^ s XML:

 <ImageView
        android:id="@ id/imageview_face_detection_selfie_circle"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintStart_toEndOf="@id/imageview_face_detection_id_card"
        app:layout_constraintEnd_toEndOf="parent"
        android:layout_marginTop="70dp"/>
 

Ответ №1:

В нем нет такой опции Coil . Чтобы нарисовать границу, вы можете использовать ShapableImageView "com.google.android.material:material:1.2.0"

     <com.google.android.material.imageview.ShapeableImageView
        android:layout_width="50dp"
        android:layout_height="50dp"
        app:strokeColor="@color/blue"
        app:strokeWidth="3dp" />
 

Ответ №2:

Если вы проверите запросы на извлечение Coil, вы можете увидеть здесь, что пользователь t-kurimura пытался реализовать нужную вам функциональность. Посмотрите его коммит и создайте свой собственный класс CircleCropTransformation. Это очень просто и работает! Я сделал это в своем проекте!