1
第二篇-用Flutter手撸一个抖音国内版,看看有多炫

前言 继上一篇使用Flutter开发的抖音国际版 后再次撸一个国内版抖音,大部分功能已完成,主要是Flutter开发APP速度很爽, 先看下图 项目主要结构介绍 这次主要的改动在api.dart 及douyin.dart里,国内抖音的api是不同的,另外地址以及实体类也不一样。详细下面介绍. 抖音的 ...

风清扬 No.1 @ 2020/05/25

2
Flutter “孔雀开屏”的动画效果

老孟导读:今天分享一个类似“孔雀开屏”的动画效果,打开新的页面时,新的页面从屏幕右上角以圆形逐渐打开到全屏。 先来看下具体的效果 不知道这种效果大家叫什么名字?如果有更合适的名字可以在评论处告诉我,下面来说下如何实现此效果。 在使用Navigator进入一个新的页面时,通常用法如下: 就包含了切换页 ...

老孟Flutter @ 2020/05/24

3
使用Flutter开发的抖音国际版

简介 最近花了两天时间研究使用Flutter开发一个抖音国际版. 个人感觉使用Flutter开发app快得不要不要的额. 两天就基本可以开发个大概出来. 最主要是热重载,太方便实时调整UI布局了. 相应速度极快. 如下图: 主要项目架构 详细说明一下,开发主要在lib文件夹 pubspec.yaml ...

风清扬 No.1 @ 2020/05/21

4
Flutter尝鲜系列—2、搭建开发环境

flutter sdk安装包 【下载地址】https://flutter.dev/docs/development/tools/sdk/releases#macos 下载完成后,操作步骤: cd ~/目标路径 unzip ~/安装包路径 设置&更新环境变量 打开 $HOME/.bash_profil ...

90后码农 @ 2020/05/08

5
Flutter沉浸式状态栏/AppBar导航栏/仿咸鱼底部凸起导航

Flutter中如何实现沉浸式透明Statusbar状态栏效果? 如下图:状态栏是指android手机顶部显示手机状态信息的位置。android 自4.4开始新加入透明状态栏功能,状态栏可以自定义颜色背景,使titleBar能够和状态栏融为一体,增加沉浸感。 如上图Flutter状态栏默认为黑色半透 ...

xiaoyan2017 @ 2020/04/27

6
flutter环境部署

一,xcode开发环境配置问题记录 1,Signing for "Runner" requires a development team xcode需要配置AppleID: 1,Xcode -> Preferences… ->Accounts 2,左下角的“+” -> Add Apple ID -> ...

仰望--星空 @ 2020/04/09

7
flutter源码学习笔记-图片加载流程

本文基于1.12.13+hotfix.8版本源码分析。 0、大纲 1. Image 2. ImageProvider 3. 图片数据加载 ImageStream、ImageStreamCompleter 4. 缓存池 PaintingBinding imageCache 5. 网络图片加载 1、Im ...

jyau @ 2020/04/06

8
Dart语言学习(四)Dart字符串

一、字符串的创建 使用 单引号,双引号 创建字符串 使用 三个引号或双引号 创建多行字符串 使用 r 创建原始 raw 字符串 String str1 = 'Hello';//"" String str2 = '''Hello Dart''';//""" print(str1); print(str ...

coderjukai @ 2020/03/05

9
Dart语言学习(五)Dart Bool类型

Dart Bool类型和其他语言类似,比较简单 其特点有: 1.使用 bool 表示布尔类型 2.布尔值只有 true 和 false 3.布尔类型bool默认值是null bool isTrue = true; bool isFalse = false; bool defaultBool ; pr ...

coderjukai @ 2020/03/05

10
Dart语言学习(六) Dart 列表List数组

List里面常用的属性和方法: 常用属性: length 长度 reversed 翻转 isEmpty 是否为空 isNotEmpty 是否不为空 常用方法: add 增加 addAll 拼接数组 indexOf 查找 传入具体值 remove 删除 传入具体值 removeAt 删除 传入索引值 ...

coderjukai @ 2020/03/05

11
Dart语言学习(七)Dart Map类型

映射(Maps)是无序的键值对: 常用属性: keys 获取所有的key值 values 获取所有的value值 isEmpty 是否为空 isNotEmpty 是否不为空 常用方法: remove(key) 删除指定key的数据 addAll({...}) 合并映射 给映射内增加属性 contai ...

coderjukai @ 2020/03/05

12
Dart语言学习(八) dynamic

dynamic 表示是动态的,数据类型是指任意类型 var a; a = 10; a = "Dart"; print(a); dynamic b = 20; b = "JavaScript"; print(b); print(b.runtimeType); var list = new List<d ...

coderjukai @ 2020/03/05

13
Dart语言学习(九) 运算符

一、运算符及其描述 二、Dart运算符注意点 1. 除法运算符"/" 和 整除运算法"~/" 的区别 除法运算符 "/" 结果是浮点型 整除运算法 "~/" 结果是整型,并且是舍去小数部分。 如下面代码: int a = 9; int b = 2; print(a / b); print(a ~/ ...

coderjukai @ 2020/03/05

14
Dart语言学习(十) Dart流程控制语句

一、条件语句:if、if...elseif、if...elseif...else int score = 95; if (score >=90) { print('优秀'); } else if (80>=score && score<90) { print('良'); } else if (60> ...

coderjukai @ 2020/03/05

15
Dart语言学习(十一) Dart异常处理

异常是表示发生了意外的错误,如果没有捕获异常,引发异常的隔离程序将被挂起,并且程序将被终止; Dart代码可以抛出并捕获异常,但与java相反,Dart的所有异常都是未检查的异常,方法不声明它们可能抛出哪些异常,也不需要捕获任何异常; Dart提供了异常和错误类型以及许多预定义的子类型,当然,也可以 ...

coderjukai @ 2020/03/05

16
Dart语言学习(十二) Dart面向对象

Dart作为一种高级语言,支持面向对象的很多特性,并且支持基于mixin的继承方式。 基于mixin的继承方式是指:一个类可以继承自多个父类,相当于其他语言里的多继承。 所有的类都有同一个基类Object,这和特性类似于Java、Objective-C 等语言,Java所有的类也都是继承自Objec ...

coderjukai @ 2020/03/05

17
Dart语言学习(十三) Dart Mixins 实现多继承

Mixins Mixins(混入功能)相当于多继承,也就是说可以继承多个类,使用with关键字来实现Mixins的功能。 那么多个类中有相同的方法时候,会被覆盖吗?覆盖的先后是什么? class A{ void a(){ print("A.a()..."); } } class B{ void a( ...

coderjukai @ 2020/03/05

18
Dart语言学习(十四) Dart泛型

什么是泛型?通俗理解:泛型就是解决 类 接口 方法的复用性、以及对不特定数据类型的支持(类型校验)如下代码,只能返回string类型的数据 String getData(String value){ return value; } 如下代码,同时支持返回 string类型 和int类型 。但是这么些 ...

coderjukai @ 2020/03/05

19
Dart语言学习(十五) Dart函数方法

Dart函数方法可分为两类:一、内置方法/函数: print(); 二、自定义方法: 自定义方法的基本格式: 返回类型 方法名称(参数1,参数2,...){ 方法体 return 返回值; } void printInfo(){ print('我是一个自定义方法'); } int getNum(){ ...

coderjukai @ 2020/03/05