前言

在Flutter开发中,对于各种手机机型的适配是一个非常重要的事情,尤其是Android系统的机型太多太杂,适配起来不是易事,而且对于iOS系统的iPhone手机的“刘海”适配也是关键的一个知识点。那么本篇博文就来分享一下关于SafeArea的使用,SafeArea也是各种稀奇古怪不规则的屏幕适配的最佳利器,方便查阅使用。

原理

SafeArea是通过MediaQuery来检测屏幕尺寸,让应用程序的大小能与屏幕适配,然后返回了一个Padding Widget 来包裹住编写的页面,这样页面就不会被不规则的屏幕给遮挡了。SafeArea基本上是美化的Padding小部件,如果使用SafeArea包装另外一个小部件,它将添加所需的必要填充,以防止小部件被各种制造商的系统状态栏、凹口、孔、圆角和其他"创意"功能所阻塞掉。

示例

接下来就来以是否设置安全区域来做一个对比演示,对比一下使用SafeArea后和未使用SafeArea的效果。具体代码如下所示:

1、修改前,未加安全区域设置的代码示例:

Widget build(BuildContext context) {    return Scaffold(        backgroundColor: Color.fromRGBO(241, 241, 241, 1),        body: Column(children: [          _buildhead(),          Expand

Flutter开发:使用SafeArea(安全区域)相关推荐

  1. Flutter开发 13.Widget-TextField、Flex、Expanded、SafeArea

    Flutter开发 13.Widget-TextField.Expanded.SafeArea 目录 1. TextField 2. Flex和Expanded 3. SafeArea 4.实例演示 ...

  2. android电影app开发,如何使用Flutter开发一款电影APP详解

    前言 使用Flutter开发一款App是一件非常愉快的事情,其出色的性能.跨多端以及数量众多的原生组件都是我们选择Flutter的理由!今天我们就来使用Flutter开发一款电影类的App,先看下Ap ...

  3. Flutter开发实战 高仿微信(一)首页

    Flutter开发实战 高仿微信(一)首页 Flutter开发实战 高仿微信(一)首页 flutter 开发微信项目 (一) 1. 开发HomePage页 2. 用到的知识点讲解 2.1 Bottom ...

  4. flutter开发小程序_为什么我认为Flutter是移动应用程序开发的未来

    flutter开发小程序 I dabbled a bit in Android and iOS development quite a few years back using Java and Ob ...

  5. flutter git 拉不起来_「干货」Flutter开发环境配置备忘录

    为什么要用Flutter? 嗯,本篇文章不会讲,因为我认为想看这篇文章的应该已经下定决心要学习Flutter. Flutter开发环境支持安装在Windows.Mac OS和Linux下,区别在于Wi ...

  6. Flutter开发之《头条 Flutter iOS 混合工程实践》笔记(54)

    摘自:头条 Flutter iOS 混合工程实践 从 App Store 下载或更新头条(6.9.2 或以上版本),找到 懂车帝 -> 热门车型,点击打开后即可体验 Flutter 的页面效果. ...

  7. Flutter开发之《闲鱼的探索与收获》笔记(51)

    本篇内容是根据闲鱼的匠修,本名叫熊华丽的做的演讲内容做的笔记.本文的内容只是认为自己需要学习的地方. 演讲实录--Flutter-闲鱼的探索与收获 Flutter基本知识 (PPT图示)左边是Flut ...

  8. Flutter开发使用PlatformView显示iOS原生View(50)

    我们在使用Flutter开发跨平台开发移动APP时,会遇到Flutter的组件满足不了原生的效果,部分控件不如原生控件好用时,就想在Flutter 的Widget 中使用iOS原生View来组合实现良 ...

  9. Flutter开发Flutter与原生OC、Java的交互通信-2(48)

    我们上一篇主要讲了Flutter与原生OC.Java的交互通信的机制:平台通道 只实现了Flutter 主动调用OC.Java的方向的通信.并没有实现OC.Java端主动调用Flutter的实现.这里 ...

  10. Flutter开发之官网的第一个例子实现(46)

    参考: 编写您的第一个 Flutter App Flutter开发我的收藏列表 准备数据:列表数据使用数组存储,选中的数据可以使用Set存储(因为set可以自动去重). 界面列表:使用ListView ...

最新文章

  1. 回复 集赞 抢 《Apple Watch 苹果开发教程》活动开始了!!!
  2. Eclipse中导入Java项目出现“No projects are found to import”
  3. android调用完自己写的app之后如何返回原来的android应用_App逆向篇 神器之 Frida...
  4. json 数组 select默认选中
  5. 免责条款html5,蚂蚁HTML5社区
  6. 神器webssh学习笔记
  7. 电工和电气工程师的区别
  8. Android Studio 模拟器重启(解决模拟器卡死问题)
  9. 阿里原来这么容易就能进去…
  10. 【强大知名的CAD绘图工具】AutoCAD 2019 for Mac
  11. 短视频拍摄技巧分享,巧用转场提升高级感,拥有自己的风格很重要
  12. Caustics焦散
  13. MCtalk创业声音丨博学明辨:兴趣社交,给退休前后老年朋友的「小而美」空间
  14. 九针串口接线问题, 232, 485
  15. QQ群630300475介绍
  16. IDM最新下载地址(搬运自俄国大佬)
  17. Unity和VS2017下载
  18. 求方程的解(简化版)
  19. 速锐得解码福特汽车LIN总线结构及灯光控制功能开关原理
  20. 8g内存学习计算机专业够吗,电脑内存4G和8G差距能有多大?电脑装机内存多大合适?...

热门文章

  1. Android安装步骤
  2. 全栈技术详解1-个人贷款违约预测模型
  3. 《数据库系统概论》| 第四章 数据库安全性 知识梳理
  4. Oracle ora-12514报错解决方法
  5. ​LeetCode刷题实战317:离建筑物最近的距离
  6. QTextEdit 富文本格式清除
  7. 微信OAuth2.0网页受权php
  8. [分享]下载电影文件英文标识的含义
  9. 网站关键词密度定义,关键词密度对网站优化有什么关系!
  10. 3.EVE-NG导入Dynamips和IOL