react-native flexbox布局

这里就重点说明一下flexbox 一些知识点。

https://reactnative.cn/docs/0.42/layout-with-flexbox.html

这篇文章讲的很好了,我这边就简单的总结一下了

首先我们要了解一个概念主轴和侧轴。

主轴就是布局从轴的起始方向到指定方向依次布局,侧轴就是主轴方向布局满了,从侧轴方向依次布局

如上图所示布局就应该是先从左向右布局,满了就到第二排,又继续从左到右布局

 

一般来说布局的存放在StyleSheet.create单独的创建的对象中(统一,比较好管理),当然样式你可以在代码中修改,布局来说我们常用到了

flexDirectionalignItems和 justifyContent

1.flexDirection:row|column

为row的话主轴就是从左向右

为colum就是从下往上

2.Justify Content 元素沿着主轴排列方式。子元素是应该靠近主轴的起始端还是末尾段分布呢?亦或应该均匀分布?对应的这些可选项有:flex-startcenterflex-endspace-around以及space-between

flex-start 默认在主轴的开始依次布局

flex-end  默认在主轴的结束依次布局 例如上图就是 从最右边依次向左边布局

space-around:表示单个元素周边的间距

space-between表示两个元素之间  和space-around都是等比分割的,

3.alignItems可以决定其子元素沿着侧轴(与主轴垂直的轴,比如若主轴方向为row,则次轴方向为column)的排列方式。子元素是应该靠近次轴的起始端还是末尾段分布呢?亦或应该均匀分布?对应的这些可选项有:flex-startcenterflex-end以及stretch

stretch:你可以认为是全填充的意思,属性赋值了width或者是height的话,stretch将无效,类似安卓的match

 

补充,1.这里要说一下flex这个属性,类似于安卓的weight,

flex的值越大分到的布局就越大,如果4个页面要分成4等份,那个flex的值都要相等。

值越小,分到的就越小,以row为例

宽度 = 总宽度*(flex/总flexsum)

2.在flexDirection ,alignitems我们可能会有一些元素要搞特殊这个时候我们用到了alignSelf

在开发实例中flexDirection是用的最多最多的

3.有时候布局需要搞特殊,不遵守这些规则 ,我们用到了position: 'absolute'这个东西

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值