Egi*_*gil 34 iphone cocoa-touch objective-c
我有一个以横向模式创建的视图(旋转后很长时间等).
在这个视图中,我想找到一个相对于主窗口的点.
以下代码在纵向模式下工作,但在landscappe中,它仍然返回值,就像它是纵向的一样.
CGPoint ptRelativeToWindow = [self convertPoint:self.bounds.origin toView:nil];
Run Code Online (Sandbox Code Playgroud)
解决了
这解决了问题并提供了正确的坐标:
[self convertPoint:self.bounds.origin toView:[UIApplication sharedApplication].keyWindow.rootViewController.view];
Run Code Online (Sandbox Code Playgroud)
Nic*_*ick 15
您无法使用主窗口来计算相对坐标.主窗口接收旋转事件并将它们传递到控制器上,这意味着它不会改变尺寸本身(总是具有相同的纵向边界).这就是为什么您找到的解决方案有意义:您找到相对于根控制器视图的坐标,它确实接收旋转事件并相应地更改其大小
| 归档时间: |
|
| 查看次数: |
5534 次 |
| 最近记录: |