在 React Native 中减少长按 TouchableHighlight 的持续时间

sch*_*ake 6 react-native

我有一个 onPress 和一个 onLongPress 的可触摸突出显示。它们都按预期工作,问题是我想减少用户在长按激活之前必须按住按钮的持续时间。有没有办法减少用户必须按住按钮进行长按的时间?也许某种过度?

<TouchableHighlight style={styles.square} onPress={this._onPressButton.bind(this,item)} onLongPress={this._onLongPressButton.bind(this,item)}>
   <View style={styles.button}>

   </View>
</TouchableHighlight>
Run Code Online (Sandbox Code Playgroud)

提前致谢

And*_*rew 8

有一个道具可以传递给TouchableHighlight1,称为delayLongPress. 你可以在这里阅读它。

基本上它允许你做的是设置,以毫秒为单位,多长时间直到onLongPress被调用。

从文档:

以毫秒为单位的延迟,来自 onPressIn,在调用 onLongPress 之前。

在下面的示例中,持续时间设置为 500 毫秒。

<TouchableHighlight
  style={styles.square}
  onPress={this._onPressButton.bind(this, item)}
  onLongPress={this._onLongPressButton.bind(this, item)}
  delayLongPress={500}
>
  <View style={styles.button}>

  </View>
</TouchableHighlight>
Run Code Online (Sandbox Code Playgroud)

1请注意,所有Touchables道具都来自TouchableWithoutFeedback. 你可以在这里看到道具TouchableHightlight