我爱编程

1.flutter基础概念

2018-04-14  本文已影响0人  zzzworm

1.flutter是什么?

2018年2月27日,在2018世界移动大会上,Google发布了Flutter的第一个Beta版本。Flutter是Google用以帮助开发者在Ios和Android两个平台开发高质量原生应用的全新移动UI框架,点击查看Flutter介绍视频

flutter特点和特性

2.框架结构

下面的图片是Flutter框架结构图,对大部分开发者而言,最常用的是Widgets层,屏幕上可见与不可见的元素都由Widgets层实现,这些元素被称为Widget。在Widgets层在上层,有两个现成的Widget库,Material库即Material Design的Widget库,Material Design是Google I/O 2014发布的设计语言,目前成为统一Android Mobile、Android Table、Desktop Chrome等平台的设计语言规范。Cupertino库则是一个模仿iOS设计风格的Widget库。

这里写图片描述

Flutter框架结构图的底层是Flutter Engine虚拟机,在这一层次中需要了解一下的是Skia,Skia是Google研发的包括图形、文本、图像、动画等多方面的图形引擎,不仅用于Google Chrome浏览器,Android系统也采用Skia作为绘图处理引擎。

这里写图片描述

上面的图片展示了Flutter的绘图原理,Flutter框架直接使用Skia引擎来渲染,因此能够控制渲染帧数,从而实现高帧速率。

3.flutter中基本概念

state 状态

和React中状态概念一致: React 的核心思想是组件化的思想,应用由组件搭建而成,而组件中最重要的概念是State(状态),State是一个组件的UI数据模型,是组件渲染时的数据依据。flutter程序的运行可以认为是一个巨大的状态机,用户的操作,请求API和系统事件的触发都是推动状态机运行的Trigger Point,Trigger Point通过调用setState方法推动状态机进行响应。

这里写图片描述

widget 控件

在flutter中,一切皆控件!一切皆控件!一切皆控件!牢牢记住这个概念。Text是控件,Image是控件,Icon是控件,布局脚手架也是控件,变换特性也是控件,页面也是控件,甚至整个APP也是控件。

用户自定义控件分为有状态控件和无状态控件两种类型。

flutter的内置控件分为两种:

这里写图片描述
上一篇 下一篇

猜你喜欢

热点阅读