Если вы хотите, чтобы представление заставило ширину заполнить его надзор, на самом деле это так же просто, как настройкIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Если вы хотите, чтобы представление заставило ширину заполнить его надзор, на самом деле это так же просто, как настройк

Сообщение Anonymous »

Скажите, что у вас есть, например, вертикальный вид стека. Его выравнивание является лидером (потому что вы хотите, чтобы большинство элементов сокращались влево). < /P>
Однако у вас есть один специальный тип предмета, который вы хотите быть полной шириной. < /P>
Я всегда делал какое -то сложное решение для достижения этого: < /p>

Код: Выделить всё

class FullWidthThing: .. {

..
translatesAutoresizingMaskIntoConstraints = false

private lazy var fullWidth: NSLayoutConstraint = {
guard let sv = superview else { return NSLayoutConstraint() }
let v = widthAnchor.constraint(equalTo: sv.widthAnchor)
v.isActive = true
return v
}()

override func layoutSubviews() {
if superview != nil {
_ = fullWidth
}
super.layoutSubviews()
}
}
Но на самом деле это так же просто, как настройка внутренней части с. Поверхностное тестирование показывает, что это работает: < /p>

Код: Выделить всё

private lazy var setup: () = {
translatesAutoresizingMaskIntoConstraints = false
setContentCompressionResistancePriority(.required, for: .horizontal)
...
return ()
}()

override var intrinsicContentSize: CGSize {
var sz = super.intrinsicContentSize
sz.width = .greatestFiniteMagnitude
return sz
}
Должен ли это работать, или есть проблема с этим, или есть общий способ сделать это?

Подробнее здесь: https://stackoverflow.com/questions/790 ... ally-as-si
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»