Я хочу округлить одну сторону до ImageView
Итак, я добавил это в качестве фона в ImageView.
one_ounded_side.xml
<vector xmlns:android = "http://schemas.android.com/apk/res/android"
android:width = "24dp"
android:height = "24dp"
android:viewportWidth = "200.0"
android:viewportHeight = "100.0">
<path
android:fillColor = "#000"
android:pathData = "M200,0H0v4.5h0v75.8h0c17.8,10.2 56,17.2 100.5,17.2c44.5,0 81.6,-7 99.5,-17.2h0V4.5h0V0z" />
И установка изображений в ImageView во время выполнения, но изображение, которое я установил, всегда переопределяет этот фоновый рисунок. Таким образом, он выглядит как обычный прямоугольник.
Я добавил ImageView вот так
<ImageView
android:layout_width = "match_parent"
android:layout_height = "250dp"
android:background = "@drawable/one_rounded_side"
android:scaleType = "centerCrop"/>
Я попытался установить фон программно после добавления изображения во время выполнения, но это не сработало.
Может ли кто-нибудь помочь мне найти решение?
Imageview не имеет идентификатора?
@Tarul используйте image.setClipToOutline (true) в своей деятельности
@AmanRawat Это не сработало
@ADM Я просто хочу, чтобы нижняя сторона была закруглена с прямоугольным основанием. Подскажите, пожалуйста, как это сделать?
@ADM попробуйте android: foreground = "@ drawable / one round side" вместо фона, иначе вам придется создать свой customImageView. Сообщите мне, если это сработает.
Параметр @AmanRawat, отображаемый на переднем плане, показывает округлый вырез на изображении, но изображение все еще отображается в прямоугольнике
@Tarul Возможно, ваше изображение прямоугольное. попробуйте масштабировать изображение. Используйте android: scaleType = "centerCrop" или android: scaleType = "fitXY".
@AmanRawat, я не отвечаю на этот вопрос. Если у вас есть решение, опубликуйте его как ответ с выводом.
Есть решение. Это сработало идеально для меня.
Включите приведенный ниже код в свой уровень проекта build.gradle
allprojects {
repositories {
...
maven { url "https://jitpack.io" }
}
}
Включите приведенный ниже код в build.gradle на уровне приложения.
implementation 'com.github.developer-shivam:Crescento:1.2.1'
Включите это в свой XML-файл
<developer.shivam.crescento.CrescentoContainer
android:id = "@+id/crescentoContainer"
android:layout_width = "match_parent"
android:layout_height = "250dp"
android:elevation = "1dp"
android:scaleType = "centerCrop"
attribute:curvature = "50dp">
<ImageView
android:id = "@+id/iv_news_details"
android:layout_width = "match_parent"
android:layout_height = "match_parent"
android:scaleType = "centerCrop"/>
</developer.shivam.crescento.CrescentoContainer>
И установите изображение в ImageView во время выполнения.
Чтобы показать закругленное изображение, вам необходимо создать закругленный
Bitmap. Как вы устанавливаете изображение? Если вы используетеGlideилиPicasso, вы можете использоватьTransformationпри загрузке.