我有一个包含2个容器视图的视图:一个位于顶部,一个位于底部。
当应用程序启动时,底部的应用程序将通过超出屏幕高度的框架隐藏。同时,最重要的一个占据整个应用程序窗口。
当我决定展示底部容器时,我希望顶部容器的高度减小,并且主容器中控制器的视图也会受到影响。
我尝试以编程方式添加约束并使用layoutIfNeeded但没有任何效果。
我是新手。我不一定想得到最好的答案,但我应该如何处理这个问题。
感谢!!!!
-(void)showBottom {
NSLayoutConstraint *constraint = [NSLayoutConstraint constraintWithItem:self.bottomContainer attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.mainContainer attribute:NSLayoutAttributeTop multiplier:1.0f constant:49.0f];
[self.view addConstraint:constraint];
}
答案 0 :(得分:1)
您可以尝试使用Top Space to Superview
约束固定对象并为其设置动画。
// .h
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *topConstraint;
// .m
[UIView animateWithDuration:1.0 animations:^{
self.topConstraint.constant = 0;
[self.nView layoutIfNeeded];
}];