Je voudrais mettre une barre blanche qui prendrait toute la largeur en bas de l'écran. Pour ce faire, j'ai pensé à utiliser le absolute
positionnement avec les flexbox
paramètres hérités .
Avec le code suivant, il rend quelque chose comme ça .
Voici mon code:
var NavigationBar = React.createClass({
render: function() {
return(
<View style={navigationBarStyles.navigationBar}>
//Icon 1, Icon 2...
</View>
);
}
});
var Main = React.createClass({
render: function() {
return(
<View style={mainStyles.container}>
<NavigationBar />
</View>
);
}
});
var mainStyles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#456783',
}
});
var navigationBarStyles = StyleSheet.create({
navigationBar: {
backgroundColor: '#FFFFFF',
height: 30,
position: 'absolute',
flexDirection: 'row',
bottom: 0,
justifyContent: 'space-between'
},
});
Je suis nouveau dans le style CSS et toutes les propriétés ne sont pas disponibles dans React-Native. Donc, toute aide est appréciée, merci :)
javascript
css
react-native
ilansas
la source
la source
height:100%
fairetop:0, bottom:0
.left:0, right:0
, et ne pas ajoutertop:0
, si vous définisseztop:0
etbottom:0
, elle affichera en plein écran.top:0
etbottom:0
en remplaçant `` hauteur: 100% ", prenez @Premasagarleft
,top
,right
etbotton
à 0 et fonctionne parfaitement.La première étape serait d'ajouter
position: 'absolute',
puis si vous voulez que l'élément pleine largeur, ajoutez
left: 0, right: 0,
puis, si vous voulez mettre l'élément en bas, ajoutez
bottom: 0, // don't need set top: 0
si vous souhaitez positionner l'élément en haut, remplacez-le
bottom: 0
partop: 0
la source
Cette solution a fonctionné pour moi:
tabBarOptions: { showIcon: true, showLabel: false, style: { backgroundColor: '#000', borderTopLeftRadius: 40, borderTopRightRadius: 40, position: 'relative', zIndex: 2, marginTop: -48 } }
la source