iOS 7 AutoLayout 约束在超级视图调整大小时不起作用(仅在第一次调整大小时)
iOS 7 AutoLayout Constraints not working when superview resized (only on first resize)
请转到下面的 link 以查看实际问题
您可以看到应该使视图底部与父视图底部对齐的底部视图约束不起作用。对于顶视图和底视图,您会看到它们的 "trailing space" 约束不起作用。但这只是第一次调整超级视图的大小,在应用程序首次打开后。
它在 iOS 8 中完美运行。我只是在 iOS 7 中遇到问题。
我正在使用 ECSlidingViewController 以及作为它的代理的 MEZoomAnimationController,以使滑出菜单正常工作。
我终于找到了解决问题的方法。 "MEZoomAnimationController" 中的 "topViewAnchorRightEndState" 函数使用以下行缩小 "topViewController":
topView.layer.transform = CATransform3DMakeScale(MEZoomAnimationScaleFactor, MEZoomAnimationScaleFactor, 1);
我用以下代码替换了那行代码:
topView.transform = CGAffineTransformMakeScale(MEZoomAnimationScaleFactor, MEZoomAnimationScaleFactor);
尽管我仍然对 CATransform3DMakeScale 无法正常工作的根本原因感到好奇。
请转到下面的 link 以查看实际问题
您可以看到应该使视图底部与父视图底部对齐的底部视图约束不起作用。对于顶视图和底视图,您会看到它们的 "trailing space" 约束不起作用。但这只是第一次调整超级视图的大小,在应用程序首次打开后。
它在 iOS 8 中完美运行。我只是在 iOS 7 中遇到问题。
我正在使用 ECSlidingViewController 以及作为它的代理的 MEZoomAnimationController,以使滑出菜单正常工作。
我终于找到了解决问题的方法。 "MEZoomAnimationController" 中的 "topViewAnchorRightEndState" 函数使用以下行缩小 "topViewController":
topView.layer.transform = CATransform3DMakeScale(MEZoomAnimationScaleFactor, MEZoomAnimationScaleFactor, 1);
我用以下代码替换了那行代码:
topView.transform = CGAffineTransformMakeScale(MEZoomAnimationScaleFactor, MEZoomAnimationScaleFactor);
尽管我仍然对 CATransform3DMakeScale 无法正常工作的根本原因感到好奇。