私は2つUIImageView
のを保持するView Controllerに取り組んでいます。下の画像ビューには、写真 (ユーザーが撮影または選択したもの) が表示されます。2 番目のイメージ ビューはこの上に配置され、画面全体を占有します。
2 番目のイメージ ビューにはポインターが含まれています (下の例では緑色の点)。画面上に配置できる可動ビューとして使用されます。その使用は、その背後にある写真の位置/ポイントをマークすることです。
ポートレートでは、これは正常に機能し、下の画像ビューは画像 = アスペクト フィルに設定されます。したがって、撮影した写真は画面全体を占めます。
横向きでは、これも機能しません。私はもう少しうまく説明することができます
下のひどく描かれた画像
例として、ユーザーがポートレート ビュー (緑色の点で表示) 上のポイントを選択した場合、おおよその位置は 220,380 です。
ただし、同じ位置が横向きの場合、後ろの写真では同じ位置にはなりません。
ポイントは、280,300 のように変換されます。
問題は... VC が横向きの場合、同じポイントを計算するために (下の画像ビュー内から) 画像の高さと幅をどのように決定すればよいですか?
または、これを達成するための別の方法/アプローチはありますか?
-------編集 ---------- この機能だけを含むテストアプリを作成しました。上記と同じ設定をしています。ビューにログを追加し、向きを横向きに変更しました。私が使用しているログは次のとおりです。
NSLog(@"bottom image view width: %f",self.photoImageView.frame.size.width);
NSLog(@"bottom image view height: %f",self.photoImageView.frame.size.height);
NSLog(@"bottom image view frame bounds X: %f",self.photoImageView.frame.origin.x);
NSLog(@"bottom image view frame bounds Y: %f",self.photoImageView.frame.origin.y);
NSLog(@"bottom image view bounds X: %f",self.photoImageView.bounds.origin.x);
NSLog(@"bottom image view bounds Y: %f",self.photoImageView.bounds.origin.y);
NSLog(@"---------BOTTOM IMAGE VIEW IMAGE DETAILS---------");
NSLog(@"bottom image view image width: %f",self.photoImageView.image.size.width);
NSLog(@"bototm image view image height: %f",self.photoImageView.image.size.height);
NSLog(@"bottom image view image frame bounds X: %f",self.photoImageView.image.accessibilityFrame.origin.x);
NSLog(@"buttom image view image frame bounds Y: %f",self.photoImageView.image.accessibilityFrame.origin.y);
結果は次のとおりです。
2013-07-30 14:58:23.013 SelectPhotoViewTest[3414:c07] ---------VIEW DETAILS---------
2013-07-30 14:58:23.014 SelectPhotoViewTest[3414:c07] ---------BOTTOM IMAGE VIEW DETAILS---------
2013-07-30 14:58:23.015 SelectPhotoViewTest[3414:c07] bottom image view width: 480.000000
2013-07-30 14:58:23.016 SelectPhotoViewTest[3414:c07] bottom image view height: 268.000000
2013-07-30 14:58:23.016 SelectPhotoViewTest[3414:c07] bottom image view frame bounds X: 0.000000
2013-07-30 14:58:23.017 SelectPhotoViewTest[3414:c07] bottom image view frame bounds Y: 0.000000
2013-07-30 14:58:23.018 SelectPhotoViewTest[3414:c07] bottom image view bounds X: 0.000000
2013-07-30 14:58:23.018 SelectPhotoViewTest[3414:c07] bottom image view bounds Y: 0.000000
2013-07-30 14:58:23.019 SelectPhotoViewTest[3414:c07] ---------BOTTOM IMAGE VIEW IMAGE DETAILS---------
2013-07-30 14:58:23.019 SelectPhotoViewTest[3414:c07] bottom image view image width: 258.000000
2013-07-30 14:58:23.019 SelectPhotoViewTest[3414:c07] bototm image view image height: 480.000000
2013-07-30 14:58:23.020 SelectPhotoViewTest[3414:c07] bottom image view image frame bounds X: 0.000000
2013-07-30 14:58:23.021 SelectPhotoViewTest[3414:c07] buttom image view image frame bounds Y: 0.000000
これらの結果から、中心点が下の画像座標のどこにあるかを判断するにはどうすればよいですか?