172 похожих чатов

Помогите, плиз, выше писал, но пока не удалось решить: UIKit,

layout, хочу, чтобы на портретную и альбомную применялись бы свои констрейнты.
Во viewDidLoad вызываю createConstraints()
, а во viewWillLayoutSubviews вызываю changeConstraints()

func changeConstraints() {
if UIDevice.current.orientation.isPortrait {
NSLayoutConstraint.deactivate(landscapeConstraints)
NSLayoutConstraint.activate(portraitConstraints)
} else {
NSLayoutConstraint.deactivate(portraitConstraints)
NSLayoutConstraint.activate(landscapeConstraints)}
}

но, именно при ПЕРВОМ запуске на симуляторе, вижу, что к портретной применились альбомные. Перевернув несколько раз в портретной потом становятся нужные констрейнты.
1. почему не срабатывают при первом запуске портретные для портретной ориентации?
2. как сделать, чтобы сработали? Спасибо

После потыкался и вот так работает:
во viewDidLoad вызываю createPortraitConstraints(),
а во viewWillLayoutSubviews() -
private func changeConstraints() {
if UIDevice.current.orientation.isPortrait {
NSLayoutConstraint.deactivate(landscapeConstraints)
usePortraitConstraints()
} else if UIDevice.current.orientation.isLandscape {
// NSLayoutConstraint.deactivate(portraitConstraints)
useLandscapeConstraints()
}
}
и так для портретной свои, для альбомной - свои констрейнты срабатывают,

а если остановить приложение в альбомной и/или в альбомной запустить, то повернув до портреной для нее не устанавливаются портретные констрейнты.
Уперся - хочу победить) помогите, плиз

14 ответов

57 просмотров

Взгляни справа на size inspector.

Roman-Vakulenko Автор вопроса

кому интересно - отказался от UIDevice.current в пользу хардкода,который помог и теперь всегда нужные констрейнты для нужной ориентации: private func changeConstraints() { let isPortrait = view.frame.size.height > view.frame.size.width NSLayoutConstraint.deactivate(portraitConstraints + landscapeConstraints) isPortrait ? usePortraitConstraints() : useLandscapeConstraints() }

Roman Vakulenko
кому интересно - отказался от UIDevice.current в п...

отказался от кита в пользу свифтюай и теперь вообще кайфую от верстки =)

MG
отказался от кита в пользу свифтюай и теперь вообщ...

Я отказался от свифтюай в пользу кита и теперь вообще кайфую от верстки :)

Никита
Я отказался от свифтюай в пользу кита и теперь воо...

значит ты просто не созрел для реактива. суи намного проще и удобнее, просто нужно понимать методологию

Никита
Я отказался от свифтюай в пользу кита и теперь воо...

Я отказался от верстки и теперь вообще кайфую :)

MG
значит ты просто не созрел для реактива. суи намно...

Я не согласен. Я задолбался всякими хаками делать обычные вещи

MG
м?

а если у тебя мин таргет 13, но ты созрел, что делать?

MG
м?

Ну выглядит так как будто вы залетели на свифтюай с таргетом на 16 иос

Michael
Ну выглядит так как будто вы залетели на свифтюай ...

да ориентируемся от 15. смысл техники эпл в том чтобы она была новой техникой эпл. если вы берете технику эпл прошлых лет то вам не нужна техника эпл. проще брать топовый самсунг каждый год, что будет производительнее. ориентируемся на сегмент аудитории которая может себе позволить новую технику эпл.

MG
да ориентируемся от 15. смысл техники эпл в том чт...

сейчас почти все из финтеха улыбнулись)

Anatoly Qstove
сейчас почти все из финтеха улыбнулись)

мне хватает денег я не гонюсь за маленькой суммой. мы финансируемся из госбюджета саудовской аравии саудиан вижен 2030 с 2026 года. поэтому ориентироваться на ниже 15 смысла нет. до 26 года можно поразвлекаться потестить

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта