Flutter-用作记忆

64 阅读2分钟

该文章仅作为个人对Flutter开发的加深记忆/以及后面开发回顾。后续会在开发中陆续补充重点。

开发工具 Android Studio

开发语言

Dart

Dart是个强类型语言,他和Swift一样,在声明变量时,不用指定变量的类型,因为 Dart 可以进行类型推断。

//number的类型是int
var number = 42;
//name的类型是String
var name = "";
//带有类型的声明
String name = 'Jay Chou';

但是不可以更改的数据类型。

var name = "";
//error: A value of type 'int' can't be assigned to a variable of type 'String'. (Documentation)
name = 1;

Dart中有一个空安全概念,类似于Swift中optional。他们都是在类型后面添加一个 ? 代表着这个对象可能为空。 使用方法

    String? name = null; 

UI

FLutter开发,离不开 package。它类似于iOS开发中的 cocopods.他可以帮你完成很多比较复杂的工作,不只限制于UI.

Flutter中定位组件是系统的。一些UI样式还是需要自己进行开发。

Flutter开发中组件之间是嵌套关系,如下:

Container(
      color: WXColor.tabbarBackgroundColor,
      child: Divider(
        height: 1,
        color: WXColor.dividerColor,
        indent: kFit(172),
        endIndent: 0,
      ),
    );

Flutter UI组件的学习

链接1 链接2 链接3 链接4

布局

Flutter布局定位

页面数据处理

页面展示数据。

Flutter的文字只能被 Text 组件展示出来.所以组件到最后肯定要包裹一个Text来展示文字。

Text(
  widget.chatModel.text,
  overflow: TextOverflow.ellipsis,
  maxLines: 1,
  style: TextStyle(
    color: Color(0xFF9B9B9B),
    fontSize: ScreenUtil().setSp(48.0),
  ),
)

数据转模型

JSON转数据模型

导航

也就是,页面跳转。

路由学习笔记

页面之间数据/事件传递

上级向下级传递数据,可以直接使用属性传递。 如果下级向上级传递,可以使用回调函数。

子组件的引用

使用系统的组件 直接

import 'package:flutter/material.dart';

使用第三方插件的话,就根据插件使用说明引入即可。