2016-11-03 1 views
0

タッチが終了しない限り再生するAVPlayerLayerを含むビューを表示するプレビュー保持ボタンを実装したいとします。ビデオプレーヤーは別のビューコントローラーに含まれており、プレゼンテーション時にpresentViewController:animated:を使用できるようにしたいと考えています。サブビューと子ビューコントローラーとして追加するだけではありません。タッチ中の現在のビューコントローラー

私の質問は、タッチイベントに対処する方法です。 、私はアクティブ元のビューコントローラのジェスチャー認識を維持しようと提示ビューコントローラ(でも、可能ならばわからない)、または

  • にイベントをアクティブタッチダウン転送しよう

    • :私は2つの方法を参照してくださいそれからビデオビューコントローラに、それを却下するときを知らせます。私はこれを実現するには、提示されたView ControllerのuserInteractionEnabledをfalseに設定するか、おそらくUIViewControllerTransitioningDelegateを使用してそれを提示してからcompleteTransition:などを呼び出すことをスキップするか(新しいものには触れないと思う)あなたがアニメーションを完了するまで、私が間違っている場合は私を修正してください)。
  • 答えて

    1

    私の質問は、どのようにタッチイベントに対処するかについてです。

    タッチは常に表示されるビューに関連付けられます。タッチを別のビューに転送することはできません。私はそれを試したことがありませんが、私はあなたが最初に探索すべきだと思うオプションは次のとおりです。

    • は、ビューコントローラの容器を使用します。プレビュービューコントローラを、タッチが発生したコントローラの子ビューコントローラにします。そのようにして、親とそのビュー階層は覆い隠すことができますが、決して消えません。

    • ジェスチャ認識機能をウィンドウに取り付けます。ウィンドウはビューであり、ジェスチャ認識機能を持つことができます。ジェスチャ認識ツールのターゲットをアプリデリゲートまたは常に存在する他のオブジェクトにすることができ、認識ツールがトリガされたときにデリゲートが通知を送信するようにすることができます。繰り返しますが、私はこれを試していませんが、うまくいくようです。

    関連する問題