タッチイベントを使用して画面に描画するアプリがあります。私はタッチのUITouch locationInView
を返すために使用します。CGPoint
問題は、x 座標と y 座標が常に同じであることです。ただし、iOS 4.2.1 を実行している第 2 世代のデバイスでのみ、かつアプリがリリース モードでビルドされている場合のみです。私のボタンはタッチに正しく反応するので、これはtouchesMoved
またはイベントオブジェクトから直接タッチを取得する場合にのみ問題になるようです。touchesEnded
http://getmoai.com/forums/new-users/ios-touch-sensor-y-co-ordinate-always-the-same-as-x/の投稿のおかげで、次を使用して問題を解決できました新しい LLVM 3.0 コンパイラではなく LLVM-GCC コンパイラを使用し、最適化レベル 0 を使用します。
興味深いのは、GCC コンパイラを使用すると、 で受け取ったタッチ位置が修正されtouchesEnded
、最適化レベルを変更してで受け取っ-O0
たタッチ位置が修正されたことtouchesMoved
です。その理由を説明することはできませんが、今のところ、私のアプリがこれらのデバイスで動作していることに興奮しています。
私の質問は、古いコンパイラを使用してアプリをストアに配信することの欠点は何ですか? (最適化レベルの影響は理解しています。) iOS 4.2.1 および/または第 2 世代デバイスに対してのみ、古いコンパイラとより低い最適化レベルを使用するようにプロジェクトを構成する方法はありますか?