微信公众号:南京Android部落
关注可了解更多关于移动端前沿技术。
本文将花费您5分钟左右的时间
什么是Flutter
Flutter是谷歌在2018年2月份的谷歌IO大会上推出的一款跨平台的UI框架,可以快速的在Android和IOS平台上构建高质量的原生用户界面。可以与你现有代码一起工作,并且是完全开源的。
有什么优点
-
快速开发
毫秒级的热重载,修改代码的同时应用界面会立即更新。使用丰富的可定制的widget快速构建原生界面。
-
灵活的UI
分层的架构允许完全自定义,实现难以置信的快速渲染和富有表现力、灵活的设计
-
原生级性能
内置丰富的widget:滚动、导航、图标和字体等,完全和IOS或者Android原生应用同样的性能表现。
快速开发
Flutter的热重载可帮助您快速地进行测试、构建UI、添加功能并更快地修复错误。在iOS和Android模拟器或真机上可以在亚秒内重载,并且不会丢失状态。
漂亮的用户界面
使用Flutter内置美丽的Material Design和Cupertino(iOS风格)widget、丰富的motion API、平滑而自然的滑动效果和平台感知,为您的用户带来全新体验。
响应式框架
使用Flutter的现代、响应式框架,和一系列基础widget,轻松构建您的用户界面。使用功能强大且灵活的API(针对2D、动画、手势、效果等)解决艰难的UI挑战。
1class CounterState extends State<Counter> {
2 int counter = 0;
3
4 void increment() {
5 // 告诉Flutter state已经改变,Flutter会调用build()更新显示
6 setState(() {
7 counter++;
8 });
9 }
10
11 Widget build(BuildContext context) {
12 // 当setState被调用时,这个方法都会重新执行,
13 // Flutter对此方法做了优化,使重新执行变得很快
14 return new Row(
15 children:<Widget>[
16 new RaisedButton(onPressed:increment, child:new Text('Increment')),
17 new Text('Count:$counter'),
18 ],
19 );
20 }
21}
访问本地功能
通过平台相关的API、第三方SDK和原生代码让您的应用变得强大易用。 Flutter允许您复用现有的Java、Swift或ObjC代码,访问iOS和Android上的原生系统功能和系统SDK。
1Future<Null> getBateryLevel() async {
2 var batteryLevel = 'unknown';
3 try {
4 int result = await methodChanel.invokeMethod('getBatteryLevel');
5 batteryLevel = 'Battery level:$result%';
6 } on PlatformException {
7 batteryLevel = 'Failed to get battery level';
8 }
9 setState(() {
10 _batteryLevel = batteryLevel;
11 });
12}
统一的应用开发体验
Flutter拥有丰富的工具和库,可以帮助您轻松地同时在iOS和Android系统中实现您的想法和创意。 如果您没有任何移动端开发体验,Flutter是一种轻松快捷的方式来构建漂亮的移动应用程序。 如果您是一位经验丰富的iOS或Android开发人员,则可以使用Flutter作为视图(View)层, 并可以使用已经用Java / ObjC / Swift完成的部分(Flutter支持混合开发)。
Flutter从入门到放弃~