我已经创建了一个Flatlist并渲染了以下内容:
<FlatList
key='flatlist'
style={styles2.list}
data={this.state.list}
renderItem={({ item }) => <TouchableHighlight
underlayColor='rgba(192,192,192,0.3)'
activeOpacity={0.5}
onPress={this.handlePress.bind(this, item.id)}
>
<ProfileListCard entry={item} />
</TouchableHighlight>}
keyExtractor={item => item.id}
/>
ProfileListCard 是我从另一个类渲染的另一个组件。 ProfileListCard 的结构如下:
<View style={styles2.card}>
<View style={styles2.header}>
<Icon
theme={{ iconFamily: 'MaterialCommunityIcons' }}
size={20}
color='#AAA'
style={styles2.icon}
name={this.props.entry.iconName}
/>
<Text>{this.props.entry.title}</Text>
</View>
</View>
问题在于,除了TouchableHighlight的背景在触摸时不会改变之外,其他所有东西都按预期工作。用于TouchableHighlight的其他道具( onPress )都可以正常工作。
感谢您的帮助,谢谢!