0

UIImageカメラを使用して画像をキャプチャしながら回転しようとしています。ただし、portraitモードでのみプレビューを取得しています。landscapeモードでプレビュー画像を表示するにはどうすればよいですか?

4

1 に答える 1

0

のドキュメントを読むと、UIImagePickerControllerこの興味深い情報が明らかになります。

UIImagePickerController クラスは、縦向きモードのみをサポートします。このクラスはそのまま使用することを意図しており、サブクラス化はサポートしていません。

Apple の警告にもかかわらず、物事を行う方法が 1 つあります。

デリゲート クラスでローテーション通知をサブスクライブできます。

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

次に、デバイスの現在の回転に基づいて、CGAffineTransformオーバーレイ ビューに を適用できます。この種の変換の例は、ここにあります。その特定の答えは、サブクラスshouldAutorotateToInterfaceOrientationに対して呼び出しが行われないため、iOS 6 では役に立ちません。UIViewController最良のバージョン戦略は、通知を購読することです。ここでは完全に手動で作業することに注意してください。最善の策は、ポートレート モードのみをサポートする方法を見つけることです。

また、完了したら、通知呼び出しとこの呼び出しのバランスをとってください。

[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
于 2012-10-16T07:10:52.990 に答える