我想知道我的UIViewControllers
视图在轮换更改后的新宽度,但我已经在
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
方法,所以我无法访问frame或bounds属性。
我尝试使用图层属性presentationLayer
和modelLayer
,但未找到正确的解决方案。
如果有人知道解决方案或者可以提供一些思考的食物,那会很棒。
答案 0 :(得分:0)
我发现了问题!
我使用的方法是早期调用的:
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
相反,我知道使用这个:
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration
{
CGRect frame = [self.view.window convertRect:self.view.frame fromView:self.view];
float newWidth = frame.size.width;
// Doing my animation stuff...
}
这使我能够拥有正确的新宽度并正确地为我的视图制作动画。