Итак, в вашем вопросе происходит небольшое недоразумение.Первое, на что я хочу обратить внимание, это ваше предположение:
«Когда я добавляю ImageView как дочерний элемент к родительскому представлению со скругленными углами, дочерний ImageView не соответствует закругленным углам».
Ваш дочерний вид фактически соблюдает границы родительского представления.Закругленные углы не границы родительского элемента View
, а отсечение рисованного элемента, который находится внутри View
.То, что вы называете своим пользовательским представлением, файл custom_view.xml
, на самом деле представляет собой пользовательский чертеж, который применяется в качестве фона для родителя.Он не влияет на границы ConstraintLayout
.
Если вы хотите, чтобы ваше изображение также имело закругленные углы, я бы посоветовал вам найти учебник по вырезанию источника ImageView
.Для поиска в Google можно найти несколько простых учебных пособий, в том числе один от Romain Guy, а также несколько на Medium, которые помогут вам.
Напомним: ваше дочернее представление на самом деле уважает границы родителя,фон, который вы применяете к представлению, на самом деле не является границей родительского элемента, а только рисуемым, чтобы выступать в качестве фона в пределах родительского представления.Таким образом, вам потребуется выполнить некоторый тип маскирования или обрезки изображения или создать собственный класс ImageView
, который автоматически обрезает его содержимое.