Одна сенсорная непрозрачность не нажимается при нажатии другой сенсорной непрозрачности - PullRequest
1 голос
/ 03 апреля 2020

Я делал программу на родном React, в которой есть две кнопки, которые при нажатии увеличивают счетчик нажатий. Проблема в том, что при нажатии одной кнопки другая не реагирует и не увеличивает счетчик. Кнопка сделана с Touchableopacity, а действие выполняется с помощью onPress.

<View style = {{flex:1,flexDirection:'row',justifyContent:'center'}}>
            <View>
            <TouchableOpacity style = {styles.button}
            onPress = {() => this.start() }
            >
              <Text style={styles.buttonText}>
                Tap
              </Text>
            </TouchableOpacity>
            </View>
            <View>
            <TouchableOpacity style = {styles.button}
            onPress = {() => this.start() }>
              <Text style={styles.buttonText}>
                Tap
              </Text>
            </TouchableOpacity>
            </View>
          </View>
</View>

Ответы [ 2 ]

0 голосов
/ 03 апреля 2020

Попробуйте использовать onTouchStart вместо onPress.

Поэтому измените:

<TouchableOpacity style={styles.button} onPress={() => this.start()}>

На:

<TouchableOpacity style={styles.button} onTouchStart={() => this.start()}>

Причина, по которой вы хотите это потому что, пока одна кнопка еще нажата, действие onPress для другой кнопки не будет выполняться, пока вы не перестанете нажимать исходную кнопку.

0 голосов
/ 03 апреля 2020

Проблема, которую я решил, используя и onTouchStart вместо и onPress

...