以前のビューに戻ることができるビューがあります。
これがアンケートだとしましょう。したがって、私のメイン ビューは QuestionnaireView(Controller) であり、2 つの可能な回答を持つ質問を示すサブビューがあります。質問に答えると、次を押すと、アンケート ビュー (コントローラー) はその特定のサブビューに次の質問を表示します。シンプルですね。
さて、特定の質問に対して最大 10 個の回答に対応しなければならないことを想像してみてください。これには、質問とすべての回答に対応するために、サブビューにスクロールビューを実装する必要があります。
ここで私の質問: QuestionnaireView(Controller) に水平方向のスワイプ (次/前の質問) の通知を受け取りたいのですが、他のすべてのタッチ (回答のラジオボタンの場合はタップ、スクロールビューの場合は垂直方向のスワイプ) を通過させます。 ..
これについてどうすればいいですか?私は約5つの異なるアプローチを試しましたが、それぞれに頭とモチベーションを壊しました:/最後の1つ(そして最も単純なもの)は、質問+回答ビューをオーバーレイする別のサブビューをアンケートビュー(コントローラー)に追加するだけでした.
これは私のためにすべての touchesBegan/Moved/Ended/Cancelled を親切にキャッチしますが、それらのメソッド ([self nextResponder] ...) の -each - にフォワードを入れただけでも、基礎となるビュー (回答とスクロールビューを含む) ) もう反応しません...
UIScrollView は iPhone 開発者が直面する最も恐ろしいモンスターなので、私はこれでちょっと迷っており、いつか自分の Scrollview を書くことを考えています :P
iPhone OS 3.0 以降をサポートしているため、新しいジェスチャ API は使用できません。