Flutter开发之认识Flutter(一)
内容来自:Flutter中文网
Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。
快速开发
毫秒级的热重载,修改后,您的应用界面会立即更新。使用丰富的、完全可定制的widget在几分钟内构建原生界面。
富有表现力和灵活的UI
快速发布聚焦于原生体验的功能。分层的架构允许您完全自定义,从而实现难以置信的快速渲染和富有表现力、灵活的设计。
原生性能
Flutter包含了许多核心的widget,如滚动、导航、图标和字体等,这些都可以在iOS和Android上达到原生应用一样的性能。
快速开发
Flutter的热重载可帮助您快速地进行测试、构建UI、添加功能并更快地修复错误。在iOS和Android模拟器或真机上可以在亚秒内重载,并且不会丢失状态。
富有表现力,漂亮的用户界面
使用Flutter内置美丽的Material Design和Cupertino(iOS风格)widget、丰富的motion API、平滑而自然的滑动效果和平台感知,为您的用户带来全新体验。
现代的,响应式框架
使用Flutter的现代、响应式框架,和一系列基础widget,轻松构建您的用户界面。使用功能强大且灵活的API(针对2D、动画、手势、效果等)解决艰难的UI挑战。
class CounterState extends State<Counter> {int counter = 0;void increment() {// 告诉Flutter state已经改变, Flutter会调用build(),更新显示setState(() {counter++;});}Widget build(BuildContext context) {// 当 setState 被调用时,这个方法都会重新执行.// Flutter 对此方法做了优化,使重新执行变的很快// 所以你可以重新构建任何需要更新的东西,而无需分别去修改各个widgetreturn new Row(children: <Widget>[new RaisedButton(onPressed: increment,child: new Text('Increment'),),new Text('Count: $counter'),],);}
}
访问本地功能和SDK
通过平台相关的API、第三方SDK和原生代码让您的应用变得强大易用。 Flutter允许您复用现有的Java、Swift或ObjC代码,访问iOS和Android上的原生系统功能和系统SDK。
访问平台功能非常简单。以下是interop example(互操作示例)中的一个片段:
Future<Null> getBatteryLevel() async {var batteryLevel = 'unknown';try {int result = await methodChannel.invokeMethod('getBatteryLevel');batteryLevel = 'Battery level: $result%';} on PlatformException {batteryLevel = 'Failed to get battery level.';}setState(() {_batteryLevel = batteryLevel;});
}
统一的应用开发体验
Flutter拥有丰富的工具和库,可以帮助您轻松地同时在iOS和Android系统中实现您的想法和创意。 如果您没有任何移动端开发体验,Flutter是一种轻松快捷的方式来构建漂亮的移动应用程序。 如果您是一位经验丰富的iOS或Android开发人员,则可以使用Flutter作为视图(View)层, 并可以使用已经用Java / ObjC / Swift完成的部分(Flutter支持混合开发)。
总结:感觉靠谱,比RN 要简单些,性能也更好些,所以决定上手试试!
Flutter开发之认识Flutter(一)相关推荐
- Flutter开发:运行flutter upgrade命令报错Exception:Flutter failed to create a directory at…解决方法
前言 在Flutter开发中,经常会遇到因为更新而引起的报错,而且最近两年Flutter不断完善和更新的速度越来越快,这就需要Flutter相关的开发者时刻保持不断学习的心态,来应对在Flutter开 ...
- Flutter开发之搭建Flutter开发环境(三)
回首demo.之前的工程突然,无法iOS上运行了.重装了最新的Xcode.然后VS Code 终端运行 flutter packages get 再打开Xcode 设置开发证书.再在iOS真机或者模拟 ...
- Flutter开发之认识Flutter(二)
在第一篇大概了解到Flutter是干什么的,属于跨平台开发,跟之前的RN 属于同一类.下面继续了解Flutter的起源.Flutter和其他平台的对比.Flutter开发语言Dart. 1.Flutt ...
- Flutter开发(十七):Flutter首页导航的框架
首页框架搭建,类似于上一节的,底部导航,不过是规范了写法,效果图如下: 首先创建了五个 dart 文件:tab_navigator.dart (总页面) .home_page.dart (首页) .m ...
- 【Flutter】Flutter 开发环境搭建 ( Android Studio 下 Flutter / Dart 插件安装 | Flutter SDK 安装 | 环境变量配置 | 开发环境检查 )
文章目录 一.Flutter 学习资料 二.Flutter 开发环境搭建 三.Android Studio 环境安装 Flutter / Dart 插件 四.下载 Flutter SDK 五.设置 F ...
- 邂逅Flutter开发
邂逅Flutter开发 一.Flutter是什么? 1.1 Flutter 文档链接 二.Flutter的特点 2.1 美观: 2.2 快速: 2.3 高效: 2.4 开放: 三.平台独立开发 四.跨 ...
- Flutter开发常见问题,解决小技巧
1.Android Studio 4.0 以上打包编译报错: Execution failed for task ':app:lintVitalRelease'. > Could not res ...
- Flutter开发:运行项目时提示Error parsing LocalFile:‘/Users/xxx/android/app/src/main/AndroidManifest.xml’…解决方法
前言 在Flutter开发初期的时候,会遇到各种各样的问题,这个时候对于刚接触Flutter开发的开发者来说是有点费事费力的,所以在Flutter开发初期要多积累,多查阅,多踩坑,这样才能快速上手开发 ...
- 基于Flutter开发的App商城
计算机工程系 毕业设计报告 题 目: 基于Flutter框架的电子商城制作 专 业: 软件技术 班 级: 17移动互联2班 学 号: 31702160219 学生姓名: 赖康翔 指导教师: 沈大旺 完 ...
最新文章
- python argparse举例说明
- [经验总结]源代码管理=Ubuntu+Apache+SVN
- fatal: protocol error: bad line length character: No s原因
- php7 on winxp 支持的模块
- 回溯算法解迷宫问题(java版)
- Docker 大势已去,Podman 即将崛起!
- Atitit atimvc rest原理与自定义实现t33 目录 1.1. Web.xml	1 1.2. MvcFilter	2 1.3. jerserMeth	4 原理 过滤器 过滤即可
- QQ恶搞 - 让艾特你的人语无伦次
- python黑网站充值_Python黑帽子:Windows系统提权
- CSS行内样式无效,!important
- 【Spark NLP】第 6 章:信息检索
- Mac突然连接不上WiFi的问题
- s2系列——s2-012,s2-013,s2-015,s2-016
- 风场可视化与原理剖析
- BDW01手把手系列04:基于TencentOS Tiny、腾讯云、腾讯连连之自制定位器
- 用PS将照片修改为358*441并且小于20k的符合社保要求
- CentOS curl命令详解
- 网络隔离变压器的选型
- 给一个IP地址,如何划分为几个子网?
- arcgis server发布shp服务实现数据库更新后服务也相应更新数据