React Native onStartShouldSetResponder and onResponderRelease?

10,690

Solution 1

Had the same problem. onStartShouldSetResponder needs to return true.

onStartShouldSetResponder={(e) => {
    /*do whatever*/;
    return true
}}

Solution 2

Please Try This code For your click event it works for me :

clickOn(){
Alert.alert(
  'Test Demo',
  'Please Enter Valid Data',
  [
    //{text: 'Ask me later', onPress: () => console.log('Ask me later pressed')},
    {text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel'},
    {text: 'OK', onPress: () => console.log('OK Pressed')},
  ],
  { cancelable: false }
)
  }
}
Put these two lines it works for me when you release
  onStartShouldSetResponder={() => true}
  onResponderRelease={() => this.onRowTap()}
Share:
10,690

Related videos on Youtube

Hasen
Author by

Hasen

Updated on September 14, 2022

Comments

  • Hasen
    Hasen over 1 year

    I've created a button that I want to have call a function on click and then again on release. A normal TouchableOpacity or other will trigger a function upon release of a click only, I need functions on both click AND release.

    <View
        style={styles.touchbutton}
        onStartShouldSetResponder={() => this.clickOn()}
        onResponderRelease={() => this.clickRelease()}>
        <Text style={styles.dark}>Button</Text>
    </View>
    

    The above code works on click but not on release. I also tried onResponderReject but that doesn't work either. Hard to find what the command should be.