2

我正在创建一个外部窗口来匹配它的 uiscreen 大小,它来自一个继承自 nsobject 的自定义类。它可以工作,但是旋转是错误的。它从各个角落旋转 - 取决于一些未知因素。在我添加的自定义类的视图控制器实现中

-(NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskAll;
}
-(BOOL)shouldAutorotate
{
    return YES;
}

并且旋转发生在外部屏幕上,但边界总是错误的。它以前可以工作,但现在不那么多了。如何让外部屏幕忽略设备旋转并正确旋转以匹配墙上的电视?这甚至是问题吗?

4

1 回答 1

0

一位朋友解决了这个问题,这是他的解决方案。检查操作系统的版本,如果是 8.3 则处理:

// Workaround for what seems like a bug in iOS 8.3
CGFloat magicAmount = (screenMode.size.width - screenMode.size.height) / 2;
_externalDisplayWindow.transform = CGAffineTransformTranslate(CGAffineTransformMakeRotation(-M_PI_2), -magicAmount, -magicAmount);
于 2015-05-08T16:17:49.330 回答