別の ScrollView 内にいくつかの ScrollView を追加して、外側の ScrollView で垂直にスクロールし、内側の ScrollView で水平にスクロールできるようにします。水平方向の ScrollViews を垂直方向に直接追加するとすべてが機能しますが、コンテナ ビュー内に水平方向の ScrollViews を追加すると、垂直方向のタッチは垂直方向に渡されません。すべての ScrollView で contentSize を再確認しましたが、正しいです。
これは機能します
UIScrollView (縦スクロール) | | --UIScrollView (縦スクロール) | | --UIScrollView (縦スクロール)
これは機能しません
UIScrollView (縦スクロール) | | -- UIView |--UIScrollView (垂直スクロール) | | -- UIView |--UIScrollView (垂直スクロール)
子スクロールビューではなくコンテナビューに触れると、このレイアウトで外側のスクロールビューをスクロールできます。
さらに興味深いことに、この問題は iPad でのみ発生し、iPhone では発生しないことに気付きました。
コンテナ ビューをサブクラス化して、タッチ イベントをスーパービューに渡すことはできますか?