我有一个登录按钮,我想在按钮的中心放置一个登录文本,并在按钮的右边缘放置一个图像(适当缩放),远离文本。
目前,我正在通过以下方式使用“矢量图标”库中的图标:
<TouchableOpacity style={styles.buttonLoginTouchable} onPress={this.loginUser.bind(this)}>
<View style={{ flexDirection: 'row' }}>
<Text style={{ color: '#ffffff', fontWeight: '700', paddingLeft: '46%' }}>Login</Text>
<Icon name="arrow-right" color='#fff' size={15} style={{ paddingLeft: '33%' }} />
</View>
</TouchableOpacity>
这可能也不是最好的方法。现在,我想用图像替换图标,所以我写了以下代码:
<TouchableOpacity style={styles.buttonLoginTouchable} onPress={this.loginUser.bind(this)}>
<View style={{ flexDirection: 'row' }}>
<Text style={{ color: '#ffffff', fontWeight: '700', flex: 0.9 }}>Login</Text>
<Image source={require('../../common/arrow.png')} resizeMode='contain' style={{ height: 10 }} />
</View>
</TouchableOpacity>
这样,图像缩放比例就以某种方式放置在右侧,但是不再水平对齐(我不明白为什么)。
有人知道实现我想要的风格的最佳方法吗?
答案 0 :(得分:0)
请参阅以下简单示例,以在react native中的touchableopacity组件中添加图像。您只需将图像组件包装在touchableopacity组件内,就非常简单。
<TouchableOpacity activeOpacity = { .5 } onPress={ this.callFun }>
<Image source={require('./images/sample_image_button.png')} style = {styles.ImagesStyle} />
</TouchableOpacity>
答案 1 :(得分:0)
像这样使用它:
<TouchableOpacity style={{flexDirection:"row",alignItems:'center',justifyContent:'center'}}>
<Text style={{flex:.8}}>Login</Text>
<Image source={require('../../common/arrow.png')} resizeMode='contain' style={{flex:.2 }} />
</TouchableOpacity>