convertPoint:toView:在横向模式下给出错误值

|| 我有一个在横向模式下创建的视图(旋转后很长时间等)。 在此视图中,我想找到一个相对于主窗口的点。 以下代码在纵向模式下有效,但是在横向视图中,它仍然返回值,就像在纵向模式下一样。
CGPoint ptRelativeToWindow = [self convertPoint:self.bounds.origin toView:nil];
解决了 这样就解决了问题,并给出了正确的坐标:
[self convertPoint:self.bounds.origin toView:[UIApplication sharedApplication].keyWindow.rootViewController.view];
    
已邀请:
        您不能使用主窗口来计算相对坐标。主窗口接收旋转事件并将其传递给控制器​​,这意味着它本身不会更改大小(始终具有相同的纵向边界)。这就是您找到的解决方案有意义的原因:您找到相对于根控制器视图的坐标,该控制器确实接收旋转事件并相应地更改其大小     

要回复问题请先登录注册