私のiPhoneアプリケーションには、写真を撮るためのUIImagePickerControllerがあります。すべてのデフォルトのカメラコントロールを非表示にし、UIImagePickerControllerのCameraOverLayViewとして2つのボタンを備えたUIViewを追加しました。私のアプリケーションは常にランドスケープモードでのみ実行されます。カメラはランドスケープモードのみを起動します。これで、CameraOverlayViewはLandscape Left側にのみ存在し、LandscapetoRightに変更されません。デバイスの向きが変わるときに、CameraOverlayView LandscapeModeを左右に変更するにはどうすればよいですか?私がそれを修正するのを手伝ってください。それは私のアプリの大きな問題です。このコードは、ランドスケープモードでオーバーレイビューを保持します左
imgpicker.cameraOverlayView.transform = CGAffineTransformRotate(CGAffineTransformIdentity, 117.81);
このコードは、カメラオーバーレイビューをランドスケープモードで保持します。GAffineTransformtransform = self.view.transform;
transform = CGAffineTransformRotate(transform, (M_PI / 2.0));
imgpicker.cameraOverlayView.transform = transform;
私はこれらのコードを次のようなUIInterfaceOrientationメソッドで使用しました。
UIInterfaceOrientation orientation= [[UIApplication sharedApplication] statusBarOrientation];
if (orientation == UIInterfaceOrientationLandscapeLeft)
{
imgpicker.cameraOverlayView.transform = CGAffineTransformRotate(CGAffineTransformIdentity, 117.81);
}
else if (orientation == UIInterfaceOrientationLandscapeRight)
{
CGAffineTransform transform = self.view.transform;
transform = CGAffineTransformRotate(transform, (M_PI / 2.0));
imgpicker.cameraOverlayView.transform = transform;
}
しかし、これらは私を助けていません。デバイスの向きの横向きを左右に回転させても、cameraoverlayviewは変更されません。私の問題を解決してくれませんか?ありがとう。