2016-02-25 12 views
12

私はPanResponderの中でScrollViewを使用しています。 Androidでは正常に動作しますが、iOSではScrollViewはスクロールしません。私はいくつかの調査を行なったし、ここにいくつかの事実です:React-native:panResponder内のscrollview

  1. 私はPanResponder.onMoveShouldSetPanResponder()にブレークポイントを置いた場合、私はステップオーバーする前に、scrollViewは、通常のようにスクロールしますが、私はブレークポイントを離すと、scrollViewが動作を停止します。

  2. ScrollResponder.jsを変更し、scrollResponderHandleStartShouldSetResponderCapture()でtrueを返すと、実行時にfalseが返されます。 scrollResponderHandleTerminationRequest()でfalseを返した場合、scrollViewは正常に動作しますが、もちろん、外部のPanResponderイベントを取得することはありません。

だから、質問は以下のとおりです。

  1. 私はイベントを飲み込むためにscrollviewが動作するようにしたい、とない。どのようなアプローチがあるのか​​知っていますか?
  2. 応答システムがiOSでどのように機能しますか?反応ネイティブレスポンダーシステムのdocはそれを私に説明しません。
+1

私は同じ問題を抱えています。試した[この解決策](http://browniefed.com/blog/2015/10/10/react-native-pan-responder-inside-of-a-scrollview/)。タッチイベントの速度が遅いときにのみ機能します。速度が速いときはいつでも、「警告:ScrollViewは拒否反応を起こしません。スクロールします」というメッセージが表示されます。これを解決する方法はまだ分かりません。 – Jeremie

答えて

0

私はあなたがまだこれを必要かどうかわからないが、あなたはScrollViewの兄弟ビューにpanResponderを置けば、私はうまく

として他人を助けるために出してあげる、ScrollViewが正しく動作します。その兄弟ビューを配置することができます

ここでは回避方法のexampleです。

関連する問題