Вы можете использовать свое состояние для достижения этой цели. Если ваше состояние в настоящий момент проверено (this.state.checked = true
), когда вы нажимаете флажок, то предполагаемое состояние не проверяется, и наоборот. Тогда вы можете установить свое состояние, чтобы быть противоположным тому, что было.
Таким образом, вы делаете противоположное текущее состояние флажка, а затем устанавливаете желаемое состояние (асинхронное).
Что-то похожее на приведенное ниже:
<CheckBox
checked={this.state.checked}
onPress={() => this.actionDone()}
/>
actionDone() {
if (this.state.checked) {
// Do what you want when the checkbox is unchecked
} else {
// Do what you want when the checkbox is checked
}
// Set the checkbox to the desired state
this.setState({checked: !this.state.checked})
}