反应本机多按钮选择

时间:2017-11-21 08:13:02

标签: android iphone react-native

嗨我想简单的按钮选择和取消选择当我在一个页面中有很多按钮时,如切换选择,但没有其他按钮会影响。

我的代码如下:

constructor(props) {
         super(props);
         this.state = {
               activeState: [false, false, false]
         };
         this.buttonPressed = this.buttonPressed.bind(this);
}
buttonPressed(index) {
        // I want to update array value true and false.
}


<TouchableOpacity 
       style={this.state.activeClasses[0] ? styles.rateButton : 
       styles.rateButtonActive} 
       onPress={() => this.addActiveClass(0)}>
</TouchableOpacity>

<TouchableOpacity 
       style={this.state.activeClasses[1] ? styles.rateButton :         
       styles.rateButtonActive} 
       onPress={() => this.addActiveClass(1)}>
</TouchableOpacity>

您可以建议我使用不同的流程或方法。

1 个答案:

答案 0 :(得分:1)

我不知道这是否正是您想要的,但我会尝试一下:

buttonPressed(index) {
        const tmpState = this.state.activeState.map((val, tmpIndex) => {
            if (tmpIndex === index) {
                return !val;
            }
            return val; 
        });
        this.setState({ activeState: tmpState });
}