Search
Write a publication
Pull to refresh

Comments 8

Ещё можно делать аутлеты для нужных constraint-ов и занулять их константу. В коде нужно лишь добавить:
if (!countryName.length)
{
    self.countryConstraint.constant = 0.f;
}

Зато xib будет выглядеть аккуратнее.
Я для своих проектов сделал категорию UIView+Constraints, где есть волшебные методы
- (NSLayoutConstraint *)constraintByAttribute:(NSLayoutAttribute)attribute;
- (NSLayoutConstraint *)constraintByAttribute:(NSLayoutAttribute)attribute toView:(UIView *)view;

Очень удобно тем, что можно не выносить каждый Constraint в класс, а легко обратиться к нужному через View.
Можете посмотреть тут: gist.github.com/GigabyteTheOne/c22f06a772eef6c99ac1
придумал довольно дурацкий способ, но нет сил протестировать :)
добавлять рядом к каждому лейблу невидимую вьюху, приделать ей constraint на высоту >=0, <= 1 и constraint с маленьким приоритетом на равенство высоты с лейблом
а отступам сделать constraint, связанный с высотой этой кривой вьюхи, с множителем (т.е. когда label будет высотой 0, то и утилитарная вьюха станет высотой 0, высота отступов умножится на ноль и они схлопнутся)
а вообще, для именно этого примера, я бы наверное использовал простой UILabel с NSAttributedString и тремя параграфами
Под iOS никогда не делал UI, но складывается впечатление, что создание UI на андроиде (в плане разных размеров и разрешений) гораздо проще и ушло далеко вперёд. Где-то можно почитать про сравнение подходов к верстке на обоих платформах?
тоже было бы интересно
Я больше трёх лет разрабатываю под iOS и недавно взялся за Android.
И да, действительно, вёрстка под Android просто рай по сравнению с iOS
Sign up to leave a comment.

Articles