#react-native #ecmascript-6
#react-native #ecmascript-6
Вопрос:
Я создаю пользовательский компонент и хочу использовать TouchableHighlight с вложенным в него представлением. TouchableHighlight имеет underlaycolor, но когда я назначаю backgroundcolor представлению, underlaycolor из TouchableHighlight больше не работает.
Если я установлю фоновый цвет в представлении на белый, он не будет работать:
<TouchableHighlight
style={{flex:1}}
underlayColor='rgba(0, 0, 0, 1)'
onPress={this._changeHeight}>
<View style={{flex:1, backgroundColor:'white'}}>
<Text>Thats a test</Text>
</View>
</TouchableHighlight>
Но если я сделаю это так, без фонового цвета в представлении, это сработает:
<TouchableHighlight
style={{flex:1}}
underlayColor='rgba(0, 0, 0, 1)'
onPress={this._changeHeight}>
<View style={{flex:1}}>
<Text>Thats a test</Text>
</View>
</TouchableHighlight>
Я ожидал, что underlaycolor все еще работает, даже если представление имеет backgroundcolor. Представление является дочерним, и я думал, что touchable является родительским. Почему это так?
Ответ №1:
Добавьте цвет фона также в формате rgba
backgroundColor:'rgba(255, 255, 255, 0)'
Комментарии:
1. Вы имеете в виду, что я должен добавить это в стиль touchable? Я пробовал это более 2 часов, но это не сработало.
2. Я говорил о добавлении его в view