Я добавляю представление программно и изменяя константу ограничения высоты, но он не устанавливает ширину в качестве ширины экрана в методе viewDidLoad. Но ширина прекрасно устанавливается, когда помещается эта строка после 0,2-секундной задержки.Зачем мне нужно установить константу константы после некоторой задержки?
Ниже мой код
Добавлено в ViewDidLoad
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ cAreaView = [[[NSBundle mainBundle] loadNibNamed:@"aView" owner:nil options:nil] objectAtIndex:0]; [_vwComplaintArea addSubview:cAreaView]; [self setConstraintLayout:cAreaView toVw:_vwComplaintArea]; [_firstViewHeightConstraint setConstant:_firstViewHeightConstraint.constant + cAreaView.bounds.size.height]; [_heightForComplaintARe setConstant:cAreaView.bounds.size.height]; });
-(void)setConstraintLayout:(UIView *)vw toVw:(UIView *)toVw { [vw autoSetDimensionsToSize:CGSizeMake(toVw.bounds.size.width, vw.bounds.size.height)]; [vw autoPinEdge:ALEdgeTop toEdge:ALEdgeTop ofView:toVw]; [vw autoPinEdge:ALEdgeLeft toEdge:ALEdgeLeft ofView:toVw]; }
Может кто-нибудь предложить лучший способ установить ограничения в viewDidLoad программно.
Спасибо.
попытаться установить ограничение в viewWillAppear. – Catoshi
Но он показывает некоторую анимацию изменения высоты просмотра. Я не хочу никакой анимации. –
Не могли бы вы предоставить свой код, который не работает и работает? –