UIImage
カメラを使用して画像をキャプチャしながら回転しようとしています。ただし、portrait
モードでのみプレビューを取得しています。landscape
モードでプレビュー画像を表示するにはどうすればよいですか?
1 に答える
0
のドキュメントを読むと、UIImagePickerController
この興味深い情報が明らかになります。
UIImagePickerController クラスは、縦向きモードのみをサポートします。このクラスはそのまま使用することを意図しており、サブクラス化はサポートしていません。
Apple の警告にもかかわらず、物事を行う方法が 1 つあります。
デリゲート クラスでローテーション通知をサブスクライブできます。
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
次に、デバイスの現在の回転に基づいて、CGAffineTransform
オーバーレイ ビューに を適用できます。この種の変換の例は、ここにあります。その特定の答えは、サブクラスshouldAutorotateToInterfaceOrientation
に対して呼び出しが行われないため、iOS 6 では役に立ちません。UIViewController
最良のバージョン戦略は、通知を購読することです。ここでは完全に手動で作業することに注意してください。最善の策は、ポートレート モードのみをサポートする方法を見つけることです。
また、完了したら、通知呼び出しとこの呼び出しのバランスをとってください。
[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
于 2012-10-16T07:10:52.990 に答える