我对这个简单的UIViewController的约束有一个奇怪的问题。我只包含两个元素,准确地说是:
1个具有这些约束的UIButton:1个具有这些约束的PageControl:问题出在iOS 8中。我已连接UIPageControl的BottomSpace约束来更改常量值(在iOS 7中可以正常工作)。在iOS 8中,该值不会更改,不会出现任何错误。我的代码很简单:
pageControlBottomConstraint.constant = 50
这两个iOS版本有什么区别?
请执行下列操作,
1.调用updateConstraintsIfNeeded
2.调用layoutIfNeeded(用于currentView和ViewYouWantToUpdate)
所以你的代码应该是
[pageControl updateConstraintsIfNeeded];
[self.view layoutIfNeeded];
[pageControl layoutIfNeeded];
如果要动画 Constraints
目标C
[pageControl updateConstraintsIfNeeded];
[UIView animateWithDuration:.75f animations:^{
__weak __typeof__(self) weakSelf = self
[self.view layoutIfNeeded];
[pageControl layoutIfNeeded];
}
Swift 3.0:
pageControl.updateConstraintsIfNeeded()
UIView.animate(withDuration: 0.75) {
weak var weakSelf = self
weakSelf?.view.layoutIfNeeded()
weakSelf?.pageControl.layoutIfNeeded()
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句