TouchableHighlight 和 TouchableOpacity 在 render() 上突出显示

sun*_*une 3 react-native touchableopacity touchablehighlight

我遇到了 TouchableHighlight 和 TouchableOpacity 在渲染时做出视觉反应的行为(未调用 onPress)。

有一件事是,当我进入页面并且按钮发出轻微的“闪烁”时,它看起来有点奇怪。这很奇怪,但可以忍受。更令人沮丧的是,如果我改变父组件的状态并因此调用 re-render(),按钮将再次“闪烁”,使得每当我改变状态时所有按钮都会闪烁。

按下按钮会改变页面状态,因此按下按钮会使两个按钮“闪烁”。

我使用react-redux,但这不应该影响这种行为。

下面的代码仅用于说明。

render()
{
    return(
        <View>
            <ToucableHightlight> //Click here changes state
                <Content/>
            </ToucableHightlight>
            <ToucableHightlight>  //Click here changes state
                <Content/>
            </ToucableHightlight>
        <View>
    );
}
Run Code Online (Sandbox Code Playgroud)

kri*_*ish 8

在TouchableOpacity中添加activeOpacity,它将强制不眨眼。

<TouchableOpacity style={styles.opecity} activeOpacity={1}>
Run Code Online (Sandbox Code Playgroud)