Objective-C 横画面のタッチイベントについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
coco

Objective-C 横画面のタッチイベントについて

#1

投稿記事 by coco » 10年前

UIViewControllerを継承したクラスのimplementation部に以下の処理を記載し、横画面へ固定させております。

コード:

// iOS6.0未満
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
 {
 ____// 横画面固定
       return UIInterfaceOrientationIsLandscape(toInterfaceOrientation);
 }

 // iOS6.0以降
- (BOOL) shouldAutorotate
 {
         return YES;
 }

 - (NSUInteger) supportedInterfaceOrientations
 {
 ____// 横画面固定
        return UIInterfaceOrientationMaskLandscape;
  }
このままではメインクラスを生成する際に縦横が反転してしまっているため、Frame.size.widthとFrame.size.heightを反転した後で生成を行っております。

問題となるのはタップを認識する際に座標が縦横反転を認識せず、縦画面の状態で行われてしまっております。
そのため横半分から右はタップしても全く認識しないという状況です。(コールバック関数が呼び出されない)

原因としてタップ関連のオブジェクトが持っている座標軸を反転出来ていないためかなと推測しておりますが、その座標軸はどちらで設定出来ますでしょうか?
ただこれも勘違いの可能性があるため何とも言えません。
似た様な症状が調べた限りでは見当たらなかったため、何か単純な見落としをしているのかもしれません・・・。

現状drawRectによる画像の描画は正常に行われており、座標軸も横画面に即したものとなっております。
また画像サイズも横画面にしっかり対応してあり、空白などは出来ておりません。

タップコールバック関数については関数内でタップ座標を確認した所、縦画面の範囲内であれば正常な値が返ってきておりました。


宜しくお願い致しますm(_ _)m


coco

Re: Objective-C 横画面のタッチイベントについて

#3

投稿記事 by coco » 10年前

有難う御座います

ご紹介下さったURLと症状がかなり似ておりましたので解決策を全て試しましたが駄目でした

結局の所原因は友達側のプロジェクトの設定にありました。
一から自分で組み立ててる事が殆どかと思われますので、中々同じ症状が見つからなかったのかもしれません

ご返信有難う御座いました。

閉鎖

“C言語何でも質問掲示板” へ戻る