如上图的底部新增按钮,要是放在web里那是相当简单,直接是用固定定位就行,但是在RN里是没有固定定位可言的。

方案一: 采用绝对定位,相对于最外层的定位在底部位置。(在部分安卓机上有问题,动态计算的高度,定位底部的高度有问题,导致底部按钮定位脱离了视野)

正确方案:还是flex布局好用。

大致如上图,头部导航<HeaderView> 是固定的,剩下的就是

<SegmentedControl> 组件(红色方框区域) 设置属性 flex:1 使它撑满剩余空间,这时候可以设置它为相对定位,然后底部那个按钮绝对定位,这样应该也行,但是咱们尝试着抛开定位继续用flex一层层的撑。
按钮底部空白的位置,不是定位出来的,其实是适应iphoneX组件的空间,所以可以忽略。
 
接下来只要把内部划成三块就行:tab导航  列表内容  底部按钮 。而列表内容和底部导航是由一个VIew 包着 和tab 导航同一层级的。所以这个View 设置flex:1.
到了最后一层,就是设置列表内容 flex:1 , 底部按钮固定高度。这样根据flex布局的属性,底部按钮就被挤在 最下面这个位置了。
 
这个方法相对于直接用一层定位来,多了几层flex:1,省去了计算高度的工作。个人更倾向于这种的,不存在安卓的兼容性,免去了样式爆炸的烦恼。
 
总结:可能上面描述的您不是很明白,核心就是一点,一层层设置flex:1,把固定高度的挤在固定的地方就行。

最新文章

  1. SNMP协议入门
  2. tty &amp; pty &amp; pts
  3. tar 「解/壓」 包
  4. CCF 认证
  5. SPRING IN ACTION 第4版笔记-第二章WIRING BEANS-008-在Java配置文件中引入xml配置文件@Import、@ImportResource
  6. 制作service服务,shell脚本小例子(来自网络)
  7. ECLIPSE IDEA 调音 1
  8. css的学习笔记
  9. pwn-GUESS
  10. Recurrent Neural Networks(RNN) 循环神经网络初探
  11. 征服诱人的Vagrant!
  12. IIS+NGINX 负载web服务器
  13. Spark代码Eclipse远程调试
  14. Android Studio 打包时 Signature Version 选择V1还是V2 ?
  15. Spring IOC(一)体系结构
  16. Intent 常用场景 FileProvider 拍照 裁剪 MD
  17. jzoj5950
  18. tomcat 项目发布方式
  19. ModelAndView在页面上取值时value=&quot;{contextConfigLocation=&lt;NONE&gt;}&quot;
  20. Java中级面试题——(上)

热门文章

  1. vue.js与angular.js的区别(个人)
  2. 汉诺塔matlab实现
  3. &lt;Android 应用 之路&gt; 百度地图API使用(3)
  4. 【阿里云产品公测】ACE下上传文件永久存储实践
  5. andriod导入v4包导致的错误
  6. Javascript之深入理解闭包
  7. Qt 日志输出文件
  8. 微软Azure虚拟机备份服务在中国发布
  9. SQL Server -&gt;&gt; SQL Server 2016新特性之 --- Query Store
  10. windows常用快捷命令