#react-native #react-native-image
#react-native #react-native-image
Вопрос:
Я хочу добавить кнопку «Редактировать» со значком в мой <Image>
компонент. ниже приведен мой код для <View>
компонентов, содержащих изображение.
<View style={{ flex: 1 }}>
<View
style={{
justifyContent: 'space-evenly',
alignItems: 'center',
flexDirection: 'row',
paddingVertical: 10
}}
>
<Image
source={{ uri: 'https://api.adorable.io/avatars/285/test@user.i.png' }}
style={{
marginLeft: 10, width: 100, height: 100, borderRadius: 50
}}
/>
</View>
</View>
будет намного лучше, если я смогу это сделать, не заменяя <ListItem>
на <Image>
Ответ №1:
Вы можете попробовать это как:
<View>
<Image
source={{ uri: 'https://api.adorable.io/avatars/285/test@user.i.png' }}
style={{
marginLeft: 10, width: 100, height: 100, borderRadius: 50
}}
/>
<Icon name={'edit'} containerStyle={styles.icon} onPress={console.log('I was clicked')}/>
</View>
Затем стиль значка, как показано ниже: обратите внимание на absolute
атрибут position
icon: {
backgroundColor: '#ccc',
position: 'absolute',
right: 0,
bottom: 0
}
Протестировано с помощью Icon
из react-native-elements, но я думаю, это должно работать с любым другим значком.
Ответ №2:
Попробуйте использовать ImageBackground, чтобы обернуть свой значок внутри него, и для этого используйте библиотеку векторных значков react-native.
<ImageBackground source={...} style={{width: '100%', height: '100%'}}>
<Icon
name="edit"
size={18}
onPress={this.edit}
>
Edit
</Icon>
</ImageBackground>
Ответ №3:
Вы можете использовать react-native-vector-icons для добавления значка в представление, содержащее изображение. Вы также можете добавить компонент icon button, используя эту библиотеку, который будет выглядеть примерно так
<Icon.Button
name="edit"
backgroundColor="#3b5998"
onPress={this.edit}
>
Edit
</Icon.Button>