无法在TouchableOpacity上设置禁用的不透明度

时间:2017-10-06 06:01:01

标签: reactjs react-native

我正在尝试添加禁用按钮功能的功能。我希望按钮不可点击并且不透明度较低。当我单击按钮时,我在外部组件中设置了应该禁用该按钮的状态(这是在等待来自服务器的响应时)。不可点击的部分有效,但点击后我无法降低其不透明度。

组件

<MyButton onPress={ this.setWaiting.bind(this) }
          disabled={ this.state.waiting } />

myButton的

const disabledStyle = {
    opacity: 0.2,
}

....

<TouchableOpacity
    style={ [styles.button, props.disabled && disabledStyle] }
    onPress={ onPress }
    disabled={ props.disabled }>
        ....
</TouchableOpacity>

如果我更改disabledStyle以设置其他背景颜色,它会按预期工作,并在disabled为真时更改背景颜色。

1 个答案:

答案 0 :(得分:0)

我认为您可能没有将最佳组件用于您尝试做的事情。 TouchableOpacity似乎是一个帮助他们使新生儿昏暗的帮手。

你可以尝试documented setOpacityTo() method,看看是否能让你到达目的地,但我认为你真正想要的是TouchableHighlight