Я хочу, чтобы мой UIImageView всегда занимал всю ширину страницы и заливку в пределах доступной высоты. (Эта страница находится в ScrollView)
Вот макет , который я пытаюсь достичь.
Что я реализовал так far:
Создан UIView (родительский объект для UIImageView) со следующими ограничениями для освобождения полей слева и справа:
let borderViewConstraints: [NSLayoutConstraint] = [
imgView.topAnchor.constraint(
equalTo: page2.topAnchor),
imgView.leadingAnchor.constraint(
equalTo: page2.leadingAnchor,
constant: -horizontalPadding),
imgView.trailingAnchor.constraint(
equalTo: page2.trailingAnchor,
constant: horizontalPadding),
]
Затем сделал imgView (UIImageView) подпредставление containerView (UIView):
imgView.contentMode = .scaleAspectFill
// ...
// Setting the constraints
imgView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
imgView.leadingAnchor.constraint(
equalTo: containerView.leadingAnchor),
imgView.topAnchor.constraint(
equalTo: containerView.topAnchor,
constant: 120),
imgView.trailingAnchor.constraint(
equalTo: containerView.trailingAnchor),
imgView.bottomAnchor.constraint(
equalTo: containerView.bottomAnchor)
])
Проблема
Проблема с этим подходом состоит в том, что, поскольку высота UIView не связана ни с чем, изображение попадает под текст заголовка на меньших экранах. Есть ли способ ограничить высоту UIView, чтобы предотвратить это переполнение?