Em React Native, borderRadius
está funcionando, mas a cor de fundo dada ao botão permanece quadrada. O que está acontecendo aqui?
JS
<TouchableHighlight
style={styles.submit}
onPress={() => this.submitSuggestion(this.props)}
underlayColor='#fff'>
<Text style={[this.getFontSize(),styles.submitText]}>Submit</Text>
</TouchableHighlight>
Estilo
...
submit:{
marginRight:40,
marginLeft:40,
marginTop:10,
},
submitText:{
paddingTop:20,
paddingBottom:20,
color:'#fff',
textAlign:'center',
backgroundColor:'#68a0cf',
borderRadius: 10,
borderWidth: 1,
borderColor: '#fff'
},
...
javascript
styles
react-native
Chipe
fonte
fonte
borderStyle: 'solid'
aosubmitText
Respostas:
Experimente mover o estilo do botão para o
TouchableHighlight
próprio:Estilos:
Botão (mesmo):
fonte
padding
também outra chave importante.Você deve adicionar
overflow: hidden
aos seus estilos:Js:
Estilos:
fonte
overflow: 'hidden'
funcionou para mim mesmo sem reagir-nativo-botãobackgroundColor
eborderRadius
no contêiner e adicionaroverflow: 'hidden'
ao contêiner funcionou para mim. (Também não está usandoreact-native-button
.)Nunca dê borderRadius para seu
<Text />
sempre embrulhar<Text />
dentro de seu<View />
ou em seu<TouchableOpacity/>
.borderRadius ligado
<Text />
funcionará perfeitamente em dispositivos Android. Mas em dispositivos IOS não funcionará.Portanto, mantenha isso em sua prática para embrulhar seu
<Text/>
interior<View/>
ou sobre<TouchableOpacity/>
e, em seguida, dar o borderRadius a isso<View />
ou<TouchableOpacity />
para que funcione em dispositivos Android e IOS.Por exemplo:-
-Obrigado
fonte
Aplique a linha de código abaixo:
fonte