我正在两个视图上执行翻转视图转换,这两个视图在A Container View中有界。第一次轻视他们工作正常。第二次观看框架不在视野范围内。
像
[<UIView: 0x7fc2316aa030; frame = (-154 -529; 0 0); autoresize = RM+BM; layer = <CALayer: 0x7fc2316aa1a0>>]
再次翻转后,会显示容器视图。
如果我在项目中取消选中“使用Autolayout”,它的工作正常。
但是,如果我使用AutoLayout,那该怎么办?
这是代码:
@IBAction func flipViews()
{
if a==false
{
UIView.transitionFromView(new, toView: old, duration: 1, options: .TransitionFlipFromLeft, completion: {(isFinished : Bool)
in
print(self.view_Effects.subviews)
// self.old.frame=self.view_Effects.frame
})
a=true
}
else
{
UIView.transitionFromView(old, toView: new, duration: 1, options: .TransitionFlipFromLeft, completion:{(isFinished : Bool)
in
print(self.view_Effects.subviews)
//self.view_Effects.hidden=true
//self.new.frame=self.view_Effects.frame
})
a=false
}
答案 0 :(得分:0)
当我布置我的观点时,所有开始工作都很好。进行转换时,重要的是要记住,自动布局总是根据您设置的约束计算视图边界和框架。因此,在我的情况下,我只是将中心垂直和水平对齐,宽度和高度添加到我的旋转视图,因此自动布局机制知道我的视图到底是什么时候。一切都很顺利。这是一个很好的自动布局教程 http://www.raywenderlich.com/50319/beginning-auto-layout-tutorial-in-ios-7-part-1