我们遇到了一个奇怪的问题。问题是,当您按下按钮时,由于某种原因,正在发生对 underlayColor 的突出显示,但 Touchable 没有触发 onPress 处理程序。
如果您继续按下按钮(如在长按事件中),则会运行 onPress 处理程序
有任何想法吗?我们仍在使用 RN 的旧版本,即 0.59.9。我想补充一点,在 iOS 上,行为是预期的。
更新(代码):
<TouchableHighlight
activeOpacity={0.5}
disabled={disabled}
delayPressIn={0}
delayLongPress={0}
onPress={onPress}
underlayColor={hexWithOpacity(Palette.Primary, 0.05)}
style={[
styles.container,
buttonStyles(disabled)[variant],
buttonContainerDimmensions()[size],
style,
]}
{...props}
>
<Text
style={[
buttonTextStyles(disabled)[variant],
buttonFontDimmensions()[size],
]}
>
{title}
</Text>
</TouchableHighlight>