32

TouchabelOpacity は iOS では正常に動作しますが、onPress メソッドは Android では動作しません。

私の反応ネイティブバージョン: 0.57.4

私のコード:

const initDrawer = navigation => (
  <TouchableOpacity
    style={{ left: 16 }}
    onPress={() => onPressDrawerButton(navigation)}
  >
    <Ionicons name="ios-menu" color="white" size={30} />
  </TouchableOpacity>
);
4

23 に答える 23

24

私は同じ問題を抱えていました.TouchableOpacityボタンはすべてiOSビルドで正常に機能していましたが、Androidには起動しなかったボタンがありました. ここで、トリガーが台無しになると述べたこの回答に出くわしました。position: absoluteそれは私の問題を解決しました。

于 2019-05-05T11:29:09.120 に答える
7

私の場合、「react-native」から追加した後、「react-native-gesture-handler」から TouchableOpacity をインポートしました。

于 2020-09-18T06:06:36.170 に答える
4

場合によっては、ネイティブ デバッガーが iOS および Android プラットフォームで正しく動作しないことがあり、デバッガーが有効になっている Android で TouchableOpacity にタッチ バグがあることがわかりました。これを無効にしてみてください。ビルド後に正常に動作します!

于 2020-09-08T19:26:48.050 に答える
2

私にとっては、すべての親から「flex:1」を削除するとうまくいきました。

于 2021-01-14T10:22:31.967 に答える
1

同じ問題がありました-私の場合、それはでレンダリングされた要素TouchableOpacityposition: 'absolute'あり、に比例して、この要素にTouchableOpacity追加して機能させました。zIndex: 0

于 2021-01-08T12:23:50.297 に答える