よくわかりませんが、問題はジェスチャ認識機能、または CGRects の場所にあると思います。基本的に、ページ ビュー コントローラーは touches-move をリッスンします。そのため、ユーザーが (webView で) スクロールをスワイプすると、ページ ビューはページめくりを実行しようとします。(私は推測しています)解決策は、ページビューのタッチ位置(CGRect)がWebビューと重ならないようにすることだと思います。ページをめくる「UIPageViewController」にタッチの位置(リージョン)を設定できるようです。
まず、iOS リファレンス ライブラリで「UIGestureRecognizer クラス リファレンス」を検索します。これが役立つことを願っています
ここに私が見つけたものがあります:
locationInView: レシーバーによって表されるジェスチャの特定のビュー内の位置として計算されたポイントを返します。
- (CGPoint)locationInView:(UIView *)view パラメータ view ジェスチャが行われた UIView オブジェクト。ウィンドウを示すには nil を指定します。戻り値 ジェスチャの位置を識別するビューのローカル座標系の点。ビューに nil が指定されている場合、メソッドは、ウィンドウの基本座標系でジェスチャの位置を返します。
考察 返される値は、UIKit フレームワークによって計算されたジェスチャの一般的な単一点の位置です。これは通常、ジェスチャに含まれるタッチの重心です。UISwipeGestureRecognizer および UITapGestureRecognizer クラスのオブジェクトの場合、このメソッドによって返される位置には、ジェスチャにとって特別な意味があります。この重要性は、これらのクラスのリファレンスに記載されています。
利用可能 iOS 3.2 以降で利用できます。関連項目 – locationOfTouch:inView: UIGestureRecognizer.h で宣言されています locationOfTouch:inView: 特定のビューのローカル座標系でジェスチャの 1 つのタッチの位置を返します。
- (CGPoint)locationOfTouch:(NSUInteger)touchIndex inView:(UIView *)view パラメータ touchIndex レシーバーが保持するプライベート配列内の UITouch オブジェクトのインデックス。このタッチ オブジェクトは、現在のジェスチャのタッチを表します。view ジェスチャが行われた UIView オブジェクト。ウィンドウを示すには nil を指定します。戻り値 タッチの位置を識別するローカル座標系ビューのポイント。view に nil が指定されている場合、メソッドはウィンドウの基本座標系でのタッチ位置を返します。
利用可能 iOS 3.2 以降で利用できます。関連項目 – locationInView: UIGestureRecognizer.h で宣言