2016-08-08 14 views
0

React Native Androidプロジェクトで奇妙なバグが発生しています。React Nativeで数回押すまでボタンが反応しない

ありカスタムオーディオプレーヤーが実装されているメディアコントローラページ(プレイで/を一時停止、ボタンなど)があり、そしてそれはAndroidのシミュレータにうまく動作しますが、I 実際のデバイスのボタンをクリックしようとすると、10回押すまで応答しません。私は考えることができる

いくつかの原因:シミュレータ上で、クリックイベントをクリックとして認識されるように

  • は、ページ全体では、パンジェスチャに応答しますが、デバイス上で、それはとしてそれを認識し、パンのジェスチャー。

  • 約1000件の警告(this answerかもしれない)のWarning: You are manually calling a React.PropTypes validation function...の警告が表示され、アプリのパフォーマンスで再生できます。  (この問題が固定されているが、それはまだ起こる)

  • だけなreact-native-streamingkitreact-native-mpremotecommandcenter、そのうちの一つを引き起こしている可能性がありますようiOSののために実装されているアプリで使用するライブラリのカップルがあります。問題。

私はそれを正しく取り巻いていますか?それ以外の理由で問題が発生する可能性はありますか?

答えて

0

私はバグを修正しました。なぜなら、その理由は、私が挙げたものの1番目であったからです。私PanResponder秒のいずれかで

onMoveShouldSetPanResponderCapture()関数は、このコードに含ま:つまり

onMoveShouldSetPanResponderCapture: (evt, gestureState) => { 
    return dx != 0 && dy != 0 && this._canPan; 
} 

を、コードがゼロにタップジェスチャーとパンジェスチャーを区別する閾値を設定しました!

次のように私はそれを変更し、それが今で美しく働いている:あなたが希望の場合は10pxのにしきい値を設定し

onMoveShouldSetPanResponderCapture: (evt, gestureState) => { 
    return (Math.abs(gestureState.dx) > 5 || Math.abs(gestureState.dy) > 5) && this._canPan; 
} 

を。

関連する問題