2017-01-31 2 views
6

Я пишу приложение React Native, и я хочу обнаружить нажатие/клики в любом месте экрана, поэтому я положил обработчик onClick на свой элемент <View>, но он, похоже, не работает. Вот моя функция рендеринга:React Native detect tap on View

<View style={styles.container} onClick={this.onClick}> 
    <Text style={styles.welcome}> 
     Tap to change the background 
    </Text> 
</View> 

Что мне нужно сделать?

+0

https://facebook.github.io/react-native/docs/view.html#pointerevents – RenaissanceProgrammer

+0

@RenaissanceProgrammer Как мне это сделать? – Hum4n01d

+0

React Native не ReactJS – Eldelshell

ответ

11

Для изготовления какого-либо элемента для обработки штриха/нажмите событие в React-Native UI, необходимо поместить элемент внутри TouchableOpacity, TouchableWithoutFeedback, TouchableNativeFeedback или TouchableHighlight элемент:

<TouchableHighlight onPress = { this.onClick }> 
    <View style={styles.container}> 
    <Text style={styles.welcome}> 
     Tap to change the background 
    </Text> 
    </View> 
</TouchableHighlight> 

Надежда, что помогает.

+0

Я попробую это :) – Hum4n01d

+0

Теперь он не отображается ... – Hum4n01d

+0

Я предполагаю, что вы меняете цвет представления ... попробуйте установить цвет в элемент TouchableHighlight через это стиль. – adonike