2

nsobject から継承するカスタム クラスから、その uiscreen サイズに一致する外部ウィンドウを作成しています。動作しますが、回転が間違っています。いくつかの未知の要因に応じて、さまざまなコーナーから回転します。追加したカスタム クラスのビュー コントローラーの実装で

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

回転は外部画面で発生しますが、境界は常に間違っています。以前は機能していましたが、現在はそれほど機能していません。外部スクリーンがデバイスの回転を無視し、壁のテレビに合わせて適切に回転するようにするにはどうすればよいですか? それも問題ですか?

4

1 に答える 1

0

友人がそれを解決し、これが彼の解決策です。OS のバージョンを確認し、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 に答える