我正在使用此消息将客户 View 动画化到设备屏幕的下边缘。我已经连接了布局约束并将初始常量设置为-60。当值设置为 0 时,我希望 View 动画到顶部。但不幸的是,预期的功能不起作用。即使调用了该方法,当界面方向改变时,也希望 View 向上。我使用 Xcode 6.4 和 iOS 8 作为基础 sdks。任何帮助将不胜感激。
if (alertVisible)
{
self.alertViewVerticalConstraint.constant = 0;
[UIView animateWithDuration:0.25 animations: ^{
[self.view bringSubviewToFront:self.alertView];
self.alertView.alpha = 0.5;
[self.alertView layoutIfNeeded];
}];
}
else
{
self.alertViewVerticalConstraint.constant = -60;
[UIView animateWithDuration:0.25 animations: ^{
self.alertView.alpha = 0.0;
[self.alertView layoutIfNeeded];
}];
}
Best Answer-推荐答案 strong>
无论何时你想要对约束变化进行动画处理,你都必须在动画 block 中定义线条。
所以你的代码会变成这样,
if (alertVisible)
{
[UIView animateWithDuration:0.25 animations: ^{
self.alertViewVerticalConstraint.constant = 0;
[self.view bringSubviewToFront:self.alertView];
self.alertView.alpha = 0.5;
[self.view layoutIfNeeded];
}];
}
else
{
[UIView animateWithDuration:0.25 animations: ^{
self.alertViewVerticalConstraint.constant = -60;
self.alertView.alpha = 0.0;
[self.view layoutIfNeeded];
}];
}
关于ios - UIView 动 Canvas 局如果需要不工作,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/35403792/
|