android flutter开发框架,Android To Flutter - 框架

Flutter是一款移动应用程序SDK,一份代码可以同时生成iOS和Android两个高性能、高保真的应用程序。Flutter目标是使开发人员能够交付在不同平台上都感觉自然流畅的高性能应用程序。

Flutter框架是一个分层的结构:

24afd4ff1851

Flutter框架

Framework 层使用 Dart实现

Material 层 包含 Android 风格的 Widget ,Cupertino 层 包含 iOS 风格的 Widget

Widgets 层包含 Widget

Rendering 层包含控制渲染的库;

Animation 层包含动画的库;Painting层包含控制绘制的库;Gestures层包含手势的库;

Foundation层 包含基础库(比如确定所属平台Android、iOS等的API、又如print、debug 相关的API)。

Engine层使用 C++ 实现,主要包括:Skia,Dart 和 Text;

Skia 层是开源的二维图形库, Dart层包含 Dart 相关的API,Text 层包含文字绘制展示相关的API。

Embedder是一个嵌入层

通过该层把Flutter嵌入到各个平台上去,Embedder的主要工作包括渲染Surface设置,线程设置,以及插件等。平台(如iOS)只是提供一个画布,剩余的所有渲染相关的逻辑都在Flutter内部,这就使得它具有了很好的跨端一致性。

一切皆为Widget:

Widget是Flutter应用程序用户界面的基本构建块。每个Widget都是用户界面一部分的不可变声明。 与其他将视图、控制器、布局和其他属性分离的框架不同,Flutter具有一致的统一对象模型:widget。

24afd4ff1851

Widget组成

Widget分为 StatelessWidget 和 StatefulWidget

StatelessWidget 是无状态的 Widget ,用于展示不需要改变显示内容的时候,使用StatelessWidget即可;

StatefulWidget是有状态的 Widget ,需要改变显示内容的时候,需要使用 StatefulWidget ;StatefulWidget 的子类相当于存放了 State 的配置信息。StatefulWidget的界面显示效果由 State 来控制展示。 当 StatefulWidget 对应的界面数据变化后,调用 setState() 方法,然后系统会运行 buildContext() 就可以做到更新界面的效果。

Container 是一个容器Widget;

Column 用于展示成 列 排列的 Widget;

Text 用于展示文字;

Image 用于展示图片;

FlatButton用于处理交互事件,同时,Flutter中可以使用GestureDetector 对Widget 进行包裹,也可以达到具备交互的效果的目的;

ListView 用于展示列表内容。

ListTile 列表项

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值