В React Native borderRadius
работает, но цвет фона, присвоенный кнопке, остается квадратным. Что здесь происходит?
JS
<TouchableHighlight
style={styles.submit}
onPress={() => this.submitSuggestion(this.props)}
underlayColor='#fff'>
<Text style={[this.getFontSize(),styles.submitText]}>Submit</Text>
</TouchableHighlight>
Стиль
...
submit:{
marginRight:40,
marginLeft:40,
marginTop:10,
},
submitText:{
paddingTop:20,
paddingBottom:20,
color:'#fff',
textAlign:'center',
backgroundColor:'#68a0cf',
borderRadius: 10,
borderWidth: 1,
borderColor: '#fff'
},
...
borderStyle: 'solid'
наsubmitText
Ответы:
Попробуйте переместить стиль кнопки в
TouchableHighlight
саму себя:Стили:
submit:{ marginRight:40, marginLeft:40, marginTop:10, paddingTop:20, paddingBottom:20, backgroundColor:'#68a0cf', borderRadius:10, borderWidth: 1, borderColor: '#fff' }, submitText:{ color:'#fff', textAlign:'center', }
Кнопка (такая же):
<TouchableHighlight style={styles.submit} onPress={() => this.submitSuggestion(this.props)} underlayColor='#fff'> <Text style={[this.getFontSize(),styles.submitText]}>Submit</Text> </TouchableHighlight>
источник
padding
еще один важный ключ.Вы должны добавить
overflow: hidden
в свои стили:Js:
Стили:
submit { backgroundColor: '#68a0cf'; overflow: 'hidden'; }
источник
overflow: 'hidden'
работал для меня даже не среагировать-родную кнопкуbackgroundColor
иborderRadius
на контейнер, а затем добавлениеoverflow: 'hidden'
в контейнер сработало для меня. (Также не используюreact-native-button
.)Никогда не передавайте borderRadius, чтобы
<Text />
всегда оборачивать это<Text />
внутри вашего<View />
или вашего<TouchableOpacity/>
.borderRadius on
<Text />
отлично работает на устройствах Android. Но на устройствах с iOS это не сработает.Так что держите это в своей практике, чтобы обернуть себя
<Text/>
внутри<View/>
или на,<TouchableOpacity/>
а затем дать borderRadius тому<View />
или<TouchableOpacity />
так, чтобы он работал как на Android, так и на устройствах IOS.Например:-
<TouchableOpacity style={{borderRadius: 15}}> <Text>Button Text</Text> </TouchableOpacity>
-Благодарность
источник
Примените следующую строку кода:
<TextInput style={{ height: 40, width: "95%", borderColor: 'gray', borderWidth: 2, borderRadius: 20, marginBottom: 20, fontSize: 18, backgroundColor: '#68a0cf' }} // Adding hint in TextInput using Placeholder option. placeholder=" Enter Your First Name" // Making the Under line Transparent. underlineColorAndroid="transparent" />
источник