diff --git a/CHANGE-LOG.md b/CHANGE-LOG.md new file mode 100644 index 00000000..008820bc --- /dev/null +++ b/CHANGE-LOG.md @@ -0,0 +1,62 @@ +## 更新日志 + +#### 2019-1-24 + - [x] 功能:更新小部件的图标 + - [x] 功能:添加CupertinoTimerPickerDemo + - [x] 调试:消除警告 + - [x] 修复:关于手册图标更换 + - [x] 添加:文案描述 + - [x] 添加:CupertinoPicker,CupertinoPopupSurface +#### 2019-1-23 + - [x] 修复: 导航栏home返回报错 + - [x] 修复:收集错误 + - [x] 添加:CupertinoNavigationBar CupertinoPageRoute CupertinoPageScaffold +#### 2019-1-22 + - [x] 功能:在Allsimon拉请求中添加英文简介 +#### 2019-1-21 + - [x] 功能:Cupertino的子项 +#### 2019-1-20 + - [x] 功能:CupertinoSwitch演示 + - [x] 功能:为搜索列表加入图标 + - [x] 功能:CupertinoSliverRefreshControl演示 + - [x] 功能:CupertinoSliverNavigationBar演示 +#### 2019-1-18 + - [x] 更新:SharedPreferences保存数据和android设备布局溢出 + - [x] 功能:添加CupertinoScrollbar演示 + - [x] 功能:第四页暂时用欢迎页替代。后期再开发 +#### 2019-1-17 + - [x] 添加:+许可证 +#### 2019-1-16 + - [x] 转换:将README翻译为En语言环境 + - [x] 功能:CupertinoScrollbar演示 +#### 2019-1-14 + - [x] 添加:增加手册页面 + - [x] 功能:文字演示 + - [x] 重构:修改过的图标 + - [x] 重构:文档,文章,组件收藏,新增webView + - [x] 重构:修改过的演示 + - [x] 重构:代码视图 + - [x] 更新:版本 和readme.md + - [x] 修改:添加代码视图 + - [x] 功能:添加搜索历史记录板 + - [x] 修改:列出加标头错误 +#### 2019-1-15 + - [x] 功能:welcomepage +#### 2019-1-13 + - [x] 添加:一些输入描述 + - [x] 功能:加入GridPaper&SliverGrid + - [x] 重构:修改db + - [x] 重构:删除数据库 TabBarView + - [x] 添加:网格视图 + - [x] 修改:checkbosListTile 错误 + - [x] 修改:自动提示文案 + - [x] 功能:增加免责声明,声明组件,自动弹出,左上角入口 + - [x] 重构:整理数据库初始逻辑,判断数据库完整性,判断是否存在已知的cat,widget,collection 三张表。 + - [x] 修复:DialogDemo,无法关闭的问题 +#### 2019-1-12 + - [x] 修复:icon没有,但内容有的,组件,给补充了icon + - [x] 修改:1.整理文件 2.修正分析 + - [x] 更新:flutter_rookie_book => flutter_go + - [x] 更新:更新SearchInput文件名=> search_input + - [x] 修改:文件名称的大小写规范 + - [x] 修改:修正bottomNavigationBar iconButton警告 diff --git a/Flutter_Go 代码开发规范.md b/Flutter_Go 代码开发规范.md new file mode 100644 index 00000000..d62e8d1c --- /dev/null +++ b/Flutter_Go 代码开发规范.md @@ -0,0 +1,679 @@ +# Flutter Go 代码开发规范 0.1.0 版 + +## 代码风格 + +### 标识符三种类型 + +#### 大驼峰 +类、枚举、typedef和类型参数 + +``` + class SliderMenu { ... } + + class HttpRequest { ... } + + typedef Predicate = bool Function(T value); +``` + +包括用于元数据注释的类 + +``` + class Foo { + const Foo([arg]); + } + + @Foo(anArg) + class A { ... } + + @Foo() + class B { ... } +``` + +#### 使用小写加下划线来命名库和源文件 + +``` + library peg_parser.source_scanner; + + import 'file_system.dart'; + import 'slider_menu.dart'; +``` + +不推荐如下写法: + +``` + library pegparser.SourceScanner; + + import 'file-system.dart'; + import 'SliderMenu.dart'; +``` + + +#### 使用小写加下划线来命名导入前缀 + +``` + import 'dart:math' as math; + import 'package:angular_components/angular_components' + as angular_components; + import 'package:js/js.dart' as js; +``` + +不推荐如下写法: + +``` + import 'dart:math' as Math; + import 'package:angular_components/angular_components' + as angularComponents; + import 'package:js/js.dart' as JS; +``` + +#### 使用小驼峰法命名其他标识符 + +``` + var item; + + HttpRequest httpRequest; + + void align(bool clearItems) { + // ... + } +``` + +#### 优先使用小驼峰法作为常量命名 + +``` + const pi = 3.14; + const defaultTimeout = 1000; + final urlScheme = RegExp('^([a-z]+):'); + + class Dice { + static final numberGenerator = Random(); + } +``` + +不推荐如下写法: + +``` + const PI = 3.14; + const DefaultTimeout = 1000; + final URL_SCHEME = RegExp('^([a-z]+):'); + + class Dice { + static final NUMBER_GENERATOR = Random(); + } +``` + +#### 不使用前缀字母 +因为Dart可以告诉您声明的类型、范围、可变性和其他属性,所以没有理由将这些属性编码为标识符名称。 + +``` + defaultTimeout +``` + +不推荐如下写法: + +``` + kDefaultTimeout +``` + +### 排序 + +为了使你的文件前言保持整洁,我们有规定的命令,指示应该出现在其中。每个“部分”应该用空行分隔。 + +#### 在其他引入之前引入所需的dart库 + +``` + import 'dart:async'; + import 'dart:html'; + + import 'package:bar/bar.dart'; + import 'package:foo/foo.dart'; +``` + +#### 在相对引入之前先引入在包中的库 + +``` + import 'package:bar/bar.dart'; + import 'package:foo/foo.dart'; + + import 'util.dart'; +``` + +#### 第三方包的导入先于其他包 + +``` + import 'package:bar/bar.dart'; + import 'package:foo/foo.dart'; + + import 'package:my_package/util.dart'; +``` + +#### 在所有导入之后,在单独的部分中指定导出 + +``` + import 'src/error.dart'; + import 'src/foo_bar.dart'; + + export 'src/error.dart'; +``` + +不推荐如下写法: + +``` + import 'src/error.dart'; + export 'src/error.dart'; + import 'src/foo_bar.dart'; +``` + + +### 所有流控制结构,请使用大括号 + +这样做可以避免悬浮的else问题 + +``` + if (isWeekDay) { + print('Bike to work!'); + } else { + print('Go dancing or read a book!'); + } +``` + +#### 例外 +一个if语句没有else子句,其中整个if语句和then主体都适合一行。在这种情况下,如果你喜欢的话,你可以去掉大括号 + +``` + if (arg == null) return defaultValue; +``` + +如果流程体超出了一行需要分划请使用大括号: + +``` + if (overflowChars != other.overflowChars) { + return overflowChars < other.overflowChars; + } +``` + +不推荐如下写法: + +``` + if (overflowChars != other.overflowChars) + return overflowChars < other.overflowChars; +``` + +## 注释 + +### 要像句子一样格式化 +除非是区分大小写的标识符,否则第一个单词要大写。以句号结尾(或“!”或“?”)。对于所有的注释都是如此:doc注释、内联内容,甚至TODOs。即使是一个句子片段。 + +``` + greet(name) { + // Assume we have a valid name. + print('Hi, $name!'); + } +``` + +不推荐如下写法: + +``` + greet(name) { + /* Assume we have a valid name. */ + print('Hi, $name!'); + } +``` + +可以使用块注释(/…/)临时注释掉一段代码,但是所有其他注释都应该使用// + +### Doc注释 +使用///文档注释来记录成员和类型。 + +使用doc注释而不是常规注释,可以让dartdoc找到并生成文档。 + +``` + /// The number of characters in this chunk when unsplit. + int get length => ... +``` + +> 由于历史原因,达特茅斯学院支持道格评论的两种语法:///(“C#风格”)和/**…* /(“JavaDoc风格”)。我们更喜欢/// 因为它更紧凑。/**和*/在多行文档注释中添加两个无内容的行。在某些情况下,///语法也更容易阅读,例如文档注释包含使用*标记列表项的项目符号列表。 + +### 考虑为私有api编写文档注释 + +Doc注释并不仅仅针对库的公共API的外部使用者。它们还有助于理解从库的其他部分调用的私有成员 + +#### 用一句话总结开始doc注释 + +以简短的、以用户为中心的描述开始你的文档注释,以句号结尾。 + +``` +/// Deletes the file at [path] from the file system. +void delete(String path) { + ... +} +``` + +不推荐如下写法: + +``` + /// Depending on the state of the file system and the user's permissions, + /// certain operations may or may not be possible. If there is no file at + /// [path] or it can't be accessed, this function throws either [IOError] + /// or [PermissionError], respectively. Otherwise, this deletes the file. + void delete(String path) { + ... + } +``` + +#### “doc注释”的第一句话分隔成自己的段落 + +在第一个句子之后添加一个空行,把它分成自己的段落 + +``` + /// Deletes the file at [path]. + /// + /// Throws an [IOError] if the file could not be found. Throws a + /// [PermissionError] if the file is present but could not be deleted. + void delete(String path) { + ... + } +``` + +## Flutter_Go 使用参考 + +### 库的引用 + +flutter go 中,导入lib下文件库,统一指定报名,避免过多的```../../``` +``` +package:flutter_go/ +``` + +### 字符串的使用 + +#### 使用相邻字符串连接字符串文字 +如果有两个字符串字面值(不是值,而是实际引用的字面值),则不需要使用+连接它们。就像在C和c++中,简单地把它们放在一起就能做到。这是创建一个长字符串很好的方法但是不适用于单独一行。 + +``` +raiseAlarm( + 'ERROR: Parts of the spaceship are on fire. Other ' + 'parts are overrun by martians. Unclear which are which.'); +``` + +不推荐如下写法: + +``` +raiseAlarm('ERROR: Parts of the spaceship are on fire. Other ' + + 'parts are overrun by martians. Unclear which are which.'); +``` + +#### 优先使用模板字符串 +``` +'Hello, $name! You are ${year - birth} years old.'; +``` + +#### 在不需要的时候,避免使用花括号 + +``` + 'Hi, $name!' + "Wear your wildest $decade's outfit." +``` + +不推荐如下写法: + +``` + 'Hello, ' + name + '! You are ' + (year - birth).toString() + ' y...'; +``` + +不推荐如下写法: + +``` + 'Hi, ${name}!' + "Wear your wildest ${decade}'s outfit." +``` + +### 集合 + +#### 尽可能使用集合字面量 + +如果要创建一个不可增长的列表,或者其他一些自定义集合类型,那么无论如何,都要使用构造函数。 + +``` + var points = []; + var addresses = {}; + var lines = []; +``` + +不推荐如下写法: + +``` + var points = List(); + var addresses = Map(); +``` + +#### 不要使用.length查看集合是否为空 + +``` +if (lunchBox.isEmpty) return 'so hungry...'; +if (words.isNotEmpty) return words.join(' '); +``` + +不推荐如下写法: + +``` + if (lunchBox.length == 0) return 'so hungry...'; + if (!words.isEmpty) return words.join(' '); +``` + +#### 考虑使用高阶方法转换序列 + +如果有一个集合,并且希望从中生成一个新的修改后的集合,那么使用.map()、.where()和Iterable上的其他方便的方法通常更短,也更具有声明性 + +``` + var aquaticNames = animals + .where((animal) => animal.isAquatic) + .map((animal) => animal.name); +``` +#### 避免使用带有函数字面量的Iterable.forEach() + +在Dart中,如果你想遍历一个序列,惯用的方法是使用循环。 + +``` +for (var person in people) { + ... +} +``` + +不推荐如下写法: + +``` + people.forEach((person) { + ... + }); +``` + +#### 不要使用List.from(),除非打算更改结果的类型 + +给定一个迭代,有两种明显的方法可以生成包含相同元素的新列表 + +``` +var copy1 = iterable.toList(); +var copy2 = List.from(iterable); +``` + +明显的区别是第一个比较短。重要的区别是第一个保留了原始对象的类型参数 + +``` +// Creates a List: +var iterable = [1, 2, 3]; + +// Prints "List": +print(iterable.toList().runtimeType); +``` + +``` +// Creates a List: +var iterable = [1, 2, 3]; + +// Prints "List": +print(List.from(iterable).runtimeType); +``` + +### 参数的使用 + +#### 使用=将命名参数与其默认值分割开 + +由于遗留原因,Dart均允许“:”和“=”作为指定参数的默认值分隔符。为了与可选的位置参数保持一致,使用“=”。 + +``` + void insert(Object item, {int at = 0}) { ... } +``` + +不推荐如下写法: + +``` + void insert(Object item, {int at: 0}) { ... } +``` + +#### 不要使用显式默认值null + +如果参数是可选的,但没有给它一个默认值,则语言隐式地使用null作为默认值,因此不需要编写它 + +``` +void error([String message]) { + stderr.write(message ?? '\n'); +} +``` + +不推荐如下写法: + +``` +void error([String message = null]) { + stderr.write(message ?? '\n'); +} +``` + +### 变量 + +#### 不要显式地将变量初始化为空 +在Dart中,未显式初始化的变量或字段自动被初始化为null。不要多余赋值null + +``` + int _nextId; + + class LazyId { + int _id; + + int get id { + if (_nextId == null) _nextId = 0; + if (_id == null) _id = _nextId++; + + return _id; + } + } +``` + +不推荐如下写法: + +``` + int _nextId = null; + + class LazyId { + int _id = null; + + int get id { + if (_nextId == null) _nextId = 0; + if (_id == null) _id = _nextId++; + + return _id; + } + } +``` + +#### 避免储存你能计算的东西 + +在设计类时,您通常希望将多个视图公开到相同的底层状态。通常你会看到在构造函数中计算所有视图的代码,然后存储它们: + +应该避免的写法: + +``` + class Circle { + num radius; + num area; + num circumference; + + Circle(num radius) + : radius = radius, + area = pi * radius * radius, + circumference = pi * 2.0 * radius; + } +``` + +如上代码问题: + +- 浪费内存 +- 缓存的问题是无效——如何知道何时缓存过期需要重新计算? + +推荐的写法如下: + +``` + class Circle { + num radius; + + Circle(this.radius); + + num get area => pi * radius * radius; + num get circumference => pi * 2.0 * radius; + } +``` + +### 类成员 + +#### 不要把不必要地将字段包装在getter和setter中 + +不推荐如下写法: + +``` + class Box { + var _contents; + get contents => _contents; + set contents(value) { + _contents = value; + } + } +``` + +#### 优先使用final字段来创建只读属性 + +尤其对于 ```StatelessWidget``` + +#### 在不需要的时候不要用this + +不推荐如下写法: + +``` + class Box { + var value; + + void clear() { + this.update(null); + } + + void update(value) { + this.value = value; + } + } +``` + +推荐如下写法: + +``` + class Box { + var value; + + void clear() { + update(null); + } + + void update(value) { + this.value = value; + } + } +``` + +### 构造函数 + +#### 尽可能使用初始化的形式 + +不推荐如下写法: + +``` + class Point { + num x, y; + Point(num x, num y) { + this.x = x; + this.y = y; + } + } +``` + +推荐如下写法: + +``` +class Point { + num x, y; + Point(this.x, this.y); +} +``` + +#### 不要使用new + +Dart2使new 关键字可选 + +推荐写法: + +``` + Widget build(BuildContext context) { + return Row( + children: [ + RaisedButton( + child: Text('Increment'), + ), + Text('Click!'), + ], + ); + } +``` + +不推荐如下写法: + +``` + Widget build(BuildContext context) { + return new Row( + children: [ + new RaisedButton( + child: new Text('Increment'), + ), + new Text('Click!'), + ], + ); + } +``` + +### 异步 + +#### 优先使用async/await代替原始的futures + +async/await语法提高了可读性,允许你在异步代码中使用所有Dart控制流结构。 + +``` + Future countActivePlayers(String teamName) async { + try { + var team = await downloadTeam(teamName); + if (team == null) return 0; + + var players = await team.roster; + return players.where((player) => player.isActive).length; + } catch (e) { + log.error(e); + return 0; + } + } +``` + +#### 当异步没有任何用处时,不要使用它 + +如果可以在不改变函数行为的情况下省略异步,那么就这样做。、 + +``` + Future afterTwoThings(Future first, Future second) { + return Future.wait([first, second]); + } +``` + +不推荐写法: + +``` + Future afterTwoThings(Future first, Future second) async { + return Future.wait([first, second]); + } +``` + + + + diff --git a/README-en.md b/README-en.md index 31d43d36..8e866ea3 100644 --- a/README-en.md +++ b/README-en.md @@ -12,6 +12,12 @@ Android download URL: Iphone download URL: No +## Development Environment +This Project need latest package, please update regularly. + +- dart(version: 2.0.0) +- flutter(version: v1.1.10) + ### Background #### What is Flutter? diff --git a/README.md b/README.md index 7f65ef0e..56f19e8d 100644 --- a/README.md +++ b/README.md @@ -3,16 +3,32 @@ Language: [English](https://github.com/alibaba/flutter-go/blob/master/README-en. > 帮助开发者快速上手 Flutter **内部测试中,1.0 正式版将于 2月 20日 发布。** +## 版本更新历史 +> 按时间顺序,展示重要的提交更新内容。 + +[地址](https://github.com/alibaba/flutter-go/blob/develop/CHANGE-LOG.md) + +## 开发规范 +> 由于类似 javascript, java, object-c,等开发者的语言习惯不同而产生歧义,我们依据官方提供的 [dart 语言规范](https://www.dartlang.org) 定制。 + +[<< Flutter Go 开发规范第一版 >>](https://github.com/alibaba/flutter-go/blob/develop/Flutter_Go%20%E4%BB%A3%E7%A0%81%E5%BC%80%E5%8F%91%E8%A7%84%E8%8C%83.md) ## Release安装包下载地址 android下载地址: - + iphone下载地址: 暂无 +## 基础环境 +本项目环境持续更新. 请定期更新各依赖包. + +- dart(version: 2.0.0) +- flutter(version: v1.1.10) + + ### 背景 #### Flutter 是什么? @@ -41,7 +57,7 @@ flutter优点主要包括: ### app 预览 - + ### Core Team @@ -79,66 +95,3 @@ flutter优点主要包括: Powered by [阿里拍卖前端团队](https://github.com/alibaba-paimai-frontend) - -## 更新日志 - -#### 2019-1-24 - - [x] 功能:更新小部件的图标 - - [x] 功能:添加CupertinoTimerPickerDemo - - [x] 调试:消除警告 - - [x] 修复:关于手册图标更换 - - [x] 添加:文案描述 - - [x] 添加:CupertinoPicker,CupertinoPopupSurface -#### 2019-1-23 - - [x] 修复: 导航栏home返回报错 - - [x] 修复:收集错误 - - [x] 添加:CupertinoNavigationBar CupertinoPageRoute CupertinoPageScaffold -#### 2019-1-22 - - [x] 功能:在Allsimon拉请求中添加英文简介 -#### 2019-1-21 - - [x] 功能:Cupertino的子项 -#### 2019-1-20 - - [x] 功能:CupertinoSwitch演示 - - [x] 功能:为搜索列表加入图标 - - [x] 功能:CupertinoSliverRefreshControl演示 - - [x] 功能:CupertinoSliverNavigationBar演示 -#### 2019-1-18 - - [x] 更新:SharedPreferences保存数据和android设备布局溢出 - - [x] 功能:添加CupertinoScrollbar演示 - - [x] 功能:第四页暂时用欢迎页替代。后期再开发 -#### 2019-1-17 - - [x] 添加:+许可证 -#### 2019-1-16 - - [x] 转换:将README翻译为En语言环境 - - [x] 功能:CupertinoScrollbar演示 -#### 2019-1-14 - - [x] 添加:增加手册页面 - - [x] 功能:文字演示 - - [x] 重构:修改过的图标 - - [x] 重构:文档,文章,组件收藏,新增webView - - [x] 重构:修改过的演示 - - [x] 重构:代码视图 - - [x] 更新:版本 和readme.md - - [x] 修改:添加代码视图 - - [x] 功能:添加搜索历史记录板 - - [x] 修改:列出加标头错误 -#### 2019-1-15 - - [x] 功能:welcomepage -#### 2019-1-13 - - [x] 添加:一些输入描述 - - [x] 功能:加入GridPaper&SliverGrid - - [x] 重构:修改db - - [x] 重构:删除数据库 TabBarView - - [x] 添加:网格视图 - - [x] 修改:checkbosListTile 错误 - - [x] 修改:自动提示文案 - - [x] 功能:增加免责声明,声明组件,自动弹出,左上角入口 - - [x] 重构:整理数据库初始逻辑,判断数据库完整性,判断是否存在已知的cat,widget,collection 三张表。 - - [x] 修复:DialogDemo,无法关闭的问题 -#### 2019-1-12 - - [x] 修复:icon没有,但内容有的,组件,给补充了icon - - [x] 修改:1.整理文件 2.修正分析 - - [x] 更新:flutter_rookie_book => flutter_go - - [x] 更新:更新SearchInput文件名=> search_input - - [x] 修改:文件名称的大小写规范 - - [x] 修改:修正bottomNavigationBar iconButton警告 diff --git a/assets/app.db b/assets/app.db index 0955a802..b5b6f0ab 100644 Binary files a/assets/app.db and b/assets/app.db differ diff --git a/lib/routers/application.dart b/lib/routers/application.dart index 0005b856..35587d4d 100644 --- a/lib/routers/application.dart +++ b/lib/routers/application.dart @@ -4,7 +4,7 @@ class Application { static Router router; static TabController controller; static Map github = { - 'widgetsURL':'https://github.com/alibaba-paimai-frontend/flutter-common-widgets-app/tree/develop/lib/widgets/', + 'widgetsURL':'https://github.com/alibaba/flutter-go/blob/develop/lib/widgets/', //'develop':'https://github.com/alibaba-paimai-frontend/flutter-common-widgets-app/tree/develop/lib/widgets/', //'master':'https://github.com/alibaba-paimai-frontend/flutter-common-widgets-app/tree/master/lib/widgets/' }; diff --git a/lib/views/first_page/home.dart b/lib/views/first_page/home.dart index f82b5e77..03a974af 100644 --- a/lib/views/first_page/home.dart +++ b/lib/views/first_page/home.dart @@ -17,7 +17,7 @@ import 'package:flutter_go/views/widget_page/widget_page.dart'; import 'package:flutter_go/views/welcome_page/fourth_page.dart'; import 'package:flutter_go/views/collection_page/collection_page.dart'; import 'package:flutter_go/routers/application.dart'; -import 'package:flutter_go/utils//provider.dart'; +import 'package:flutter_go/utils/provider.dart'; import 'package:flutter_go/model/widget.dart'; import 'package:flutter_go/widgets/index.dart'; import 'package:flutter_go/components/search_input.dart'; diff --git a/lib/widgets/components/Bar/BottomAppBar/index.dart b/lib/widgets/components/Bar/BottomAppBar/index.dart index e21ab78a..5a121b73 100644 --- a/lib/widgets/components/Bar/BottomAppBar/index.dart +++ b/lib/widgets/components/Bar/BottomAppBar/index.dart @@ -38,7 +38,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'BottomAppBar', - codeUrl: 'componentss/Bar/BottomAppBar/demo.dart', + codeUrl: 'components/Bar/BottomAppBar/demo.dart', contentList: [allDomes(context, this)], docUrl: 'https://docs.flutter.io/flutter/material/BottomAppBar-class.html', ); diff --git a/lib/widgets/components/Bar/SliverAppBar/index.dart b/lib/widgets/components/Bar/SliverAppBar/index.dart index 8a770f23..92490640 100644 --- a/lib/widgets/components/Bar/SliverAppBar/index.dart +++ b/lib/widgets/components/Bar/SliverAppBar/index.dart @@ -40,7 +40,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'SliverAppBar', - codeUrl: 'componentss/Bar/SliverAppBar/demo.dart', + codeUrl: 'components/Bar/SliverAppBar/demo.dart', contentList:[allDomes(context, this)], docUrl: 'https://docs.flutter.io/flutter/widgets/SliverAppBar-class.html', ); diff --git a/lib/widgets/components/Bar/SnackBar/index.dart b/lib/widgets/components/Bar/SnackBar/index.dart index 45843295..e99b7b66 100644 --- a/lib/widgets/components/Bar/SnackBar/index.dart +++ b/lib/widgets/components/Bar/SnackBar/index.dart @@ -40,7 +40,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'SnackBar', - codeUrl: 'componentss/Bar/SnackBar/demo.dart', + codeUrl: 'components/Bar/SnackBar/demo.dart', contentList: [allDomes(context, this)], docUrl: 'https://docs.flutter.io/flutter/material/SnackBar-class.html', ); diff --git a/lib/widgets/components/Dialog/AlertDialog/demo.dart b/lib/widgets/components/Dialog/AlertDialog/demo.dart index 857961e3..ba00b0e9 100644 --- a/lib/widgets/components/Dialog/AlertDialog/demo.dart +++ b/lib/widgets/components/Dialog/AlertDialog/demo.dart @@ -10,12 +10,9 @@ import 'package:flutter/material.dart'; -class AlertDialogDemo extends StatefulWidget { - _Demo createState() => _Demo(); -} +class AlertDialogDemo extends StatelessWidget{ + // _Demo createState() => _Demo(); -class _Demo extends State { - void showAlertDialog(BuildContext context) { showDialog( context: context, @@ -141,3 +138,8 @@ class _Demo extends State { }); } } + +// class _Demo extends State { + + +// } diff --git a/lib/widgets/components/Grid/SliverGrid/index.dart b/lib/widgets/components/Grid/SliverGrid/index.dart index 926387af..cfdc138a 100644 --- a/lib/widgets/components/Grid/SliverGrid/index.dart +++ b/lib/widgets/components/Grid/SliverGrid/index.dart @@ -40,7 +40,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'SliverGrid', - codeUrl: 'components/Grid/GridPaper/demo.dart', + codeUrl: 'components/Grid/SliverGrid/demo.dart', contentList: [ _Text0, SliverGridDemo(), diff --git a/lib/widgets/components/LIst/AnimatedList/index.dart b/lib/widgets/components/LIst/AnimatedList/index.dart index 0d92a9fc..a2197110 100644 --- a/lib/widgets/components/LIst/AnimatedList/index.dart +++ b/lib/widgets/components/LIst/AnimatedList/index.dart @@ -32,7 +32,7 @@ const String _Text1 = class Demo extends StatefulWidget { - static const String routeName = '/components//List/AnimatedList'; + static const String routeName = '/components/List/AnimatedList'; @override _DemoState createState() => _DemoState(); diff --git a/lib/widgets/components/LIst/ListView/index.dart b/lib/widgets/components/LIst/ListView/index.dart index 5aa655dd..01a6d246 100644 --- a/lib/widgets/components/LIst/ListView/index.dart +++ b/lib/widgets/components/LIst/ListView/index.dart @@ -67,7 +67,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'ListView', - codeUrl: '/componentss/List/ListView/demo.dart', + codeUrl: 'components/List/ListView/demo.dart', contentList: [allCheckboxs(context, this)], docUrl: 'https://docs.flutter.io/flutter/widgets/ListView-class.html', ); diff --git a/lib/widgets/components/Menu/PopupMenuEntry/index.dart b/lib/widgets/components/Menu/PopupMenuEntry/index.dart index e5c46fe9..6443f446 100644 --- a/lib/widgets/components/Menu/PopupMenuEntry/index.dart +++ b/lib/widgets/components/Menu/PopupMenuEntry/index.dart @@ -34,7 +34,7 @@ class _DemoState extends State { PopupMenuDividerDemo() ], docUrl: 'https://docs.flutter.io/flutter/material/PopupMenuEntry-class.html', - codeUrl: 'components/Menu/PopupMenuEntry/demo.dart', + codeUrl: 'components/Menu/PopupMenuDivider/demo.dart', title: 'PopupMenuEntry', ); } diff --git a/lib/widgets/components/Menu/PopupMenuItem/index.dart b/lib/widgets/components/Menu/PopupMenuItem/index.dart index f8b8e315..1e1705b9 100644 --- a/lib/widgets/components/Menu/PopupMenuItem/index.dart +++ b/lib/widgets/components/Menu/PopupMenuItem/index.dart @@ -34,7 +34,7 @@ class _DemoState extends State { PopupMenuDividerDemo() ], docUrl: "https://docs.flutter.io/flutter/material/PopupMenuItem-class.html", - codeUrl: 'components/Menu/PopupMenuEntry/demo.dart', + codeUrl: 'components/Menu/PopupMenuDivider/demo.dart', title: 'PopupMenuItem', ); } diff --git a/lib/widgets/components/Progress/CircularProgressIndicator/index.dart b/lib/widgets/components/Progress/CircularProgressIndicator/index.dart index 5a44e5e7..a90ddc2d 100644 --- a/lib/widgets/components/Progress/CircularProgressIndicator/index.dart +++ b/lib/widgets/components/Progress/CircularProgressIndicator/index.dart @@ -38,7 +38,7 @@ class _DemoState extends State { content1, CircularDemo(), ], - codeUrl: '/components/Progress/CircularProgressIndicator/demo.dart', + codeUrl: 'components/Progress/CircularProgressIndicator/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/LinearProgressIndicator-class.html', title: 'CircularProgressIndicator'); diff --git a/lib/widgets/components/Progress/LinearProgressIndicator/index.dart b/lib/widgets/components/Progress/LinearProgressIndicator/index.dart index 9d2c1a32..4d8d635f 100644 --- a/lib/widgets/components/Progress/LinearProgressIndicator/index.dart +++ b/lib/widgets/components/Progress/LinearProgressIndicator/index.dart @@ -38,7 +38,7 @@ class _DemoState extends State { content1, LinearProgressIndicatorDemo(), ], - codeUrl: '/components/Progress/LinearProgressIndicator/demo.dart', + codeUrl: 'components/Progress/LinearProgressIndicator/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/LinearProgressIndicator-class.html', title: 'LinearProgressIndicator'); diff --git a/lib/widgets/components/Progress/RefreshProgressIndicator/index.dart b/lib/widgets/components/Progress/RefreshProgressIndicator/index.dart index bd447cc9..b9c436fb 100644 --- a/lib/widgets/components/Progress/RefreshProgressIndicator/index.dart +++ b/lib/widgets/components/Progress/RefreshProgressIndicator/index.dart @@ -35,7 +35,7 @@ class _DemoState extends State { content1, // LinearProgressIndicatorDemo(), ], - codeUrl: '/components/Progress/RefreshProgressIndicator/demo.dart', + codeUrl: 'components/Progress/RefreshProgressIndicator/demo.dart', docUrl:'https://docs.flutter.io/flutter/material/RefreshProgressIndicator-class.html', title: 'RefreshProgressIndicator'); } diff --git a/lib/widgets/elements/Form/CheckBox/Checkbox/demo.dart b/lib/widgets/elements/Form/CheckBox/Checkbox/demo.dart index 60ebf8c8..c34d10af 100644 --- a/lib/widgets/elements/Form/CheckBox/Checkbox/demo.dart +++ b/lib/widgets/elements/Form/CheckBox/Checkbox/demo.dart @@ -12,7 +12,7 @@ import 'package:flutter/material.dart'; /* * Checkbox 默认的实例 * index 当前checkbox 的索引值 -* */ +*/ class CheckboxDefault extends StatefulWidget{ final int index; final parent; @@ -41,7 +41,7 @@ class _CheckboxDefault extends State { /* * Checkbox 默认的实例 * index 当前checkbox 的索引值 -* */ +*/ class CheckboxSelect extends StatelessWidget { final int index; final widget; diff --git a/lib/widgets/elements/Form/Slider/SliderComponentShape/index.dart b/lib/widgets/elements/Form/Slider/SliderComponentShape/index.dart deleted file mode 100644 index e69de29b..00000000 diff --git a/lib/widgets/elements/Form/Switch/Switch/index.dart b/lib/widgets/elements/Form/Switch/Switch/index.dart index 9a80c96c..f660a039 100644 --- a/lib/widgets/elements/Form/Switch/Switch/index.dart +++ b/lib/widgets/elements/Form/Switch/Switch/index.dart @@ -83,7 +83,7 @@ class _Demo extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'Switch', - codeUrl: '', + codeUrl: 'elements/Form/Switch/Switch/demo.dart', contentList: [ contentA, SwitchDemo(), diff --git a/lib/widgets/elements/Form/Text/RichText/index.dart b/lib/widgets/elements/Form/Text/RichText/index.dart index 51b38f70..2e90f269 100644 --- a/lib/widgets/elements/Form/Text/RichText/index.dart +++ b/lib/widgets/elements/Form/Text/RichText/index.dart @@ -1,36 +1,17 @@ import 'package:flutter/material.dart'; -import 'package:flutter_markdown/flutter_markdown.dart'; + import 'package:flutter_go/components/widget_demo.dart'; import 'demo.dart'; const String intro = """ -# 富文本显示 +### **简介** + +> 具有复杂样式的文本显示组件 在富文本使用多个不同风格的widget显示文本。要显示的文本使用TextSpan对象树来描述,每个对象都有一个用于该子树的关联样式。文本可能会跨越多行,也可能全部显示在同一行上,具体取决于布局约束。 -# 示例代码 - -``` -RichText( - text: TextSpan( - text: 'Hello ', - style: DefaultTextStyle.of(context).style, - children: [ - TextSpan(text: 'bold', style: TextStyle(fontWeight: FontWeight.bold)), - TextSpan(text: ' world!'), - ], - ), -) -``` - -# 示例示例 - -"""; -const String diff = """ -# RichText 与 Text.rich 对比 - 无论是Text或者Text.rich, 查看源代码发现. 都是由RichText构建出来 -## 源码展示 +RichText的源码展示 ``` // Text 源码 @@ -49,12 +30,14 @@ const String diff = """ return result; } ``` -待补充... +### **基本实例** + """; -const Map markDesc = { - 'intro': intro, - 'diff': diff -}; +const String diff = """ + + +"""; + class Demo extends StatefulWidget { static const String routeName = '/element/Form/Text/RichText'; _Demo createState() => _Demo(); @@ -66,14 +49,10 @@ class _Demo extends State { return WidgetDemo( title: 'Rich Text', docUrl: 'https://docs.flutter.io/flutter/widgets/RichText-class.html', - codeUrl: '', - contentList: [ Column( - children: [ - MarkdownBody(data: markDesc['intro']), - RichTextDemo(), - MarkdownBody(data: markDesc['diff']), - ], - ), - ]); + codeUrl: 'elements/Form/Text/RichText/index.dart', + contentList: [ + intro, + RichTextDemo(), + ]); } } diff --git a/lib/widgets/elements/Form/Text/Text/demo.dart b/lib/widgets/elements/Form/Text/Text/demo.dart new file mode 100644 index 00000000..8d19f74d --- /dev/null +++ b/lib/widgets/elements/Form/Text/Text/demo.dart @@ -0,0 +1,24 @@ +/** + * Created with Android Studio. + * User: 三帆 + * Date: 20/01/2019 + * Time: 22:28 + * email: sanfan.hx@alibaba-inc.com + * tartget: CupertinoTabBar + */ + +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; + +class TextDemo extends StatefulWidget { + _Demo createState() => _Demo(); +} + +class _Demo extends State { + int index = 0; + Duration timer = new Duration(minutes: 50); + + Widget build(BuildContext context) { + return Text("i'm a text"); + } +} \ No newline at end of file diff --git a/lib/widgets/elements/Form/Text/Text/index.dart b/lib/widgets/elements/Form/Text/Text/index.dart index 43ff8d0b..962aeec2 100644 --- a/lib/widgets/elements/Form/Text/Text/index.dart +++ b/lib/widgets/elements/Form/Text/Text/index.dart @@ -1,70 +1,30 @@ import 'package:flutter/material.dart'; -//import 'package:flutter_markdown/flutter_markdown.dart'; import 'package:flutter_go/components/widget_demo.dart'; -import '../../../../../components/markdown.dart'; +import 'demo.dart'; const String intro = """ -# 说明 +### **简介** > 具有某个单一样式的文本显示的widget组件, 显示支持一行或者多行. 默认样式会继承层级最为接近的 *DefaultStyle* 当然, 你也可以重新他的样式 将 *DefaultStyle.inherit 设置为 false* -# 示例代码 +是最基本的文本显示组件 -``` dart -Text( - 'Hello, World ! How are you?', - textAlign: TextAlign.center, - overflow: TextOverflow.ellipsis, - style: TextStyle(fontWeight: FontWeight.bold), -) -``` +### **基本用法** +在这里介绍一下他的基本属性说明. -# 示例显示 +- data Text显示的文本,必填参数 String +- textAlign 文本的对齐方式,可以选择左对齐、右对齐还是居中对齐 TextAlign +- maxLines 文本显示的最大行数 int +- overflow 文本显示的截断方式 TextOverflow +- textScaleFactor 文本的缩放比例 double +- style 用于指定文本显示的样式如颜色、字体、粗细、背景等 +### **基本示例** + """; -const String leftDesc = """ -# 示例代码 - - -``` dart -// 左侧布局示例 -Text( - "Hello, World! I'm start from left?", - textAlign: TextAlign.left, - overflow: TextOverflow.ellipsis, - style: TextStyle(fontWeight: FontWeight.bold, inherit: true), -), -``` -# 示例显示 -"""; - -const String RichDesc = """ - -# 复杂文本显示 - -使用 Text.rich 构造函数,Text 组件可以显示具有不同样式的 TextSpan 段落。下面的示例显示每个单词具有不同样式的“Hello beautiful world”。 - -``` -Text.rich( - TextSpan( - text: 'Hello', // default text style - children: [ - TextSpan(text: ' beautiful ', style: TextStyle(fontStyle: FontStyle.italic)), - TextSpan(text: 'world', style: TextStyle(fontWeight: FontWeight.bold)), - ], - ), -) -``` -"""; - -const Map markDesc = { - "intro": intro, - "left": leftDesc, - "rich": RichDesc -}; class Demo extends StatefulWidget { static const String routeName = '/element/Form/Text/Text'; _Demo createState() => _Demo(); @@ -78,39 +38,11 @@ class _Demo extends State { return WidgetDemo( title: "Text", docUrl: 'flutter/widgets/Text-class.html', - codeUrl: 'elements/Form/Text/Text/index.dart', - contentList: [ Column( - children: [ - MarkdownBody(markDesc['intro']), - Text( - 'Hello, World! How are you?', - textAlign: TextAlign.center, - overflow: TextOverflow.ellipsis, - style: TextStyle(fontWeight: FontWeight.bold), - ), - MarkdownBody(markDesc['left']), - Container( - width: 750.0, - color: Color(0xFF0096ef), - child: Text( - "Hello, World! I'm start from left?", - textAlign: TextAlign.left, - overflow: TextOverflow.ellipsis, - style: TextStyle(color: Color(0xffffffff)), - ), - ), - MarkdownBody( markDesc['rich']), - Text.rich( - TextSpan( - text: 'Hello', // default text style - children: [ - TextSpan(text: ' beautiful ', style: TextStyle(fontStyle: FontStyle.italic)), - TextSpan(text: 'world', style: TextStyle(fontWeight: FontWeight.bold)), - ], - ), - ) - ], - )] + codeUrl: 'elements/Form/Text/Text/demo.dart', + contentList: [ + intro, + TextDemo(), + ] ); } } diff --git a/lib/widgets/elements/Media/Image/DecorationImage/index.dart b/lib/widgets/elements/Media/Image/DecorationImage/index.dart index 25d40d4c..8fadb96b 100644 --- a/lib/widgets/elements/Media/Image/DecorationImage/index.dart +++ b/lib/widgets/elements/Media/Image/DecorationImage/index.dart @@ -38,7 +38,7 @@ class _DemoState extends State { contentText1, DecorationImageDemo(), ], - codeUrl: 'elements/Media/Image/DecorationImage/index.dart?1542705856254', + codeUrl: 'elements/Media/Image/DecorationImage/decorationImage_demo.dart', docUrl: 'https://docs.flutter.io/flutter/painting/DecorationImage-class.html', title: 'DecorationImage', diff --git a/lib/widgets/elements/Media/Image/MemoryImage/index.dart b/lib/widgets/elements/Media/Image/MemoryImage/index.dart index a7d42d87..b81c9587 100644 --- a/lib/widgets/elements/Media/Image/MemoryImage/index.dart +++ b/lib/widgets/elements/Media/Image/MemoryImage/index.dart @@ -40,7 +40,7 @@ class _DemoState extends State { // desc: 'MemoryImage 使用介绍', docUrl: 'https://docs.flutter.io/flutter/painting/MemoryImage-class.html', codeUrl: - 'elements/Media/Image/MemoryImage/index.dart?1542777213280', + 'elements/Media/Image/MemoryImage/index.dart', ); } } diff --git a/lib/widgets/elements/Media/Image/NetworkImage/index.dart b/lib/widgets/elements/Media/Image/NetworkImage/index.dart index b417e84c..4f488956 100644 --- a/lib/widgets/elements/Media/Image/NetworkImage/index.dart +++ b/lib/widgets/elements/Media/Image/NetworkImage/index.dart @@ -34,7 +34,7 @@ class _DemoState extends State { contentText1, NetworkImageDemo(), ], - codeUrl: '', + codeUrl: 'elements/Media/Image/NetworkImage/network_image_demo.dart', docUrl: 'https://docs.flutter.io/flutter/painting/NetworkImage-class.html', title: 'NetworkImage', ); diff --git a/lib/widgets/themes/Cupertino/CupertinoApp/index.dart b/lib/widgets/themes/Cupertino/CupertinoApp/index.dart index 124c1658..4fd0f923 100644 --- a/lib/widgets/themes/Cupertino/CupertinoApp/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoApp/index.dart @@ -47,7 +47,7 @@ class _DemoState extends State { ], title: 'CupertinoApp', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoApp-class.html', - codeUrl: '/themes/Cupertino/CupertinoApp/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoApp/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoButton/index.dart b/lib/widgets/themes/Cupertino/CupertinoButton/index.dart index 4f69f315..71a6ce57 100644 --- a/lib/widgets/themes/Cupertino/CupertinoButton/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoButton/index.dart @@ -39,7 +39,7 @@ class _DemoState extends State { ], title: 'CupertinoButton', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoButton-class.html', - codeUrl: '/themes/Cupertino/CupertinoButton/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoButton/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoColors/index.dart b/lib/widgets/themes/Cupertino/CupertinoColors/index.dart index d8f5e6ca..412619d7 100644 --- a/lib/widgets/themes/Cupertino/CupertinoColors/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoColors/index.dart @@ -36,7 +36,7 @@ class _DemoState extends State { ], title: 'CupertinoColors', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoColors-class.html', - codeUrl: '/themes/Cupertino/CupertinoColor/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoColors/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoIcons/index.dart b/lib/widgets/themes/Cupertino/CupertinoIcons/index.dart index 93b60c1d..ef3fbf23 100644 --- a/lib/widgets/themes/Cupertino/CupertinoIcons/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoIcons/index.dart @@ -38,7 +38,7 @@ class _DemoState extends State { ], title: 'CupertinoIcons', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoIcons-class.html', - codeUrl: '/themes/Cupertino/CupertinoColor/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoIcons/demo.dart' ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoNavigationBar/index.dart b/lib/widgets/themes/Cupertino/CupertinoNavigationBar/index.dart index 939e791c..85ded637 100644 --- a/lib/widgets/themes/Cupertino/CupertinoNavigationBar/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoNavigationBar/index.dart @@ -48,7 +48,7 @@ class _DemoState extends State { ], title: 'CupertinoNavigationBar', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoNavigationBar-class.html', - codeUrl: '/themes/Cupertino/CupertinoNavigationBar/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoNavigationBar/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoPageRoute/index.dart b/lib/widgets/themes/Cupertino/CupertinoPageRoute/index.dart index e61ebc04..b492204b 100644 --- a/lib/widgets/themes/Cupertino/CupertinoPageRoute/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoPageRoute/index.dart @@ -41,7 +41,7 @@ class _DemoState extends State { ], title: 'CupertinoPageRoute', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoPageRoute-class.html', - codeUrl: '/themes/Cupertino/CupertinoPageRoute/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoPageRoute/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoPageScaffold/index.dart b/lib/widgets/themes/Cupertino/CupertinoPageScaffold/index.dart index 4e1808de..4c22b429 100644 --- a/lib/widgets/themes/Cupertino/CupertinoPageScaffold/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoPageScaffold/index.dart @@ -39,7 +39,7 @@ class _DemoState extends State { ], title: 'CupertinoPageScaffold', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoPageScaffold-class.html', - codeUrl: '/themes/Cupertino/CupertinoPageScaffold/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoPageScaffold/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoPicker/index.dart b/lib/widgets/themes/Cupertino/CupertinoPicker/index.dart index 24e93819..58e8328c 100644 --- a/lib/widgets/themes/Cupertino/CupertinoPicker/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoPicker/index.dart @@ -39,7 +39,7 @@ class _DemoState extends State { ], title: 'CupertinoPicker', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoPicker-class.html', - codeUrl: '/themes/Cupertino/CupertinoPicker/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoPicker/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoPopupSurface/index.dart b/lib/widgets/themes/Cupertino/CupertinoPopupSurface/index.dart index 24d5a09a..a4030a16 100644 --- a/lib/widgets/themes/Cupertino/CupertinoPopupSurface/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoPopupSurface/index.dart @@ -38,7 +38,7 @@ class _DemoState extends State { ], title: 'CupertinoPopupSurface', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoPopupSurface-class.html', - codeUrl: '/themes/Cupertino/CupertinoPopupSurface/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoPopupSurface/demo.dart', ); } } \ No newline at end of file diff --git a/lib/widgets/themes/Cupertino/CupertinoScrollbar/index.dart b/lib/widgets/themes/Cupertino/CupertinoScrollbar/index.dart index 8e598703..229566e6 100644 --- a/lib/widgets/themes/Cupertino/CupertinoScrollbar/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoScrollbar/index.dart @@ -27,7 +27,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoScrollbar', - codeUrl: '/themes/Cupertino/CupertinoScrollbar/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoScrollbar/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/MaterialAccentColor-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoSegmentedControl/index.dart b/lib/widgets/themes/Cupertino/CupertinoSegmentedControl/index.dart index 2eb2d7c8..1fef5c8f 100644 --- a/lib/widgets/themes/Cupertino/CupertinoSegmentedControl/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoSegmentedControl/index.dart @@ -32,7 +32,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoSegmentedControl', - codeUrl: '/themes/Cupertino/CupertinoSegmentedControl/demo.dart', + codeUrl: '/hemes/Cupertino/CupertinoSegmentedControl/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoSegmentedControl-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoSlider/index.dart b/lib/widgets/themes/Cupertino/CupertinoSlider/index.dart index 9df6839b..a0c82e86 100644 --- a/lib/widgets/themes/Cupertino/CupertinoSlider/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoSlider/index.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; + import 'package:flutter_go/components/widget_demo.dart'; import 'demo.dart'; const Text0 = ''' @@ -26,7 +27,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoSlider', - codeUrl: '/themes/Cupertino/CupertinoSlider/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoSlider/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoSlider-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoSliverNavigationBar/index.dart b/lib/widgets/themes/Cupertino/CupertinoSliverNavigationBar/index.dart index 6b48e1c5..11c13344 100644 --- a/lib/widgets/themes/Cupertino/CupertinoSliverNavigationBar/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoSliverNavigationBar/index.dart @@ -24,7 +24,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoSlider', - codeUrl: '/themes/Cupertino/CupertinoSliverNavigationBar/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoSliverNavigationBar/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoSliverNavigationBar-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoSwitch/index.dart b/lib/widgets/themes/Cupertino/CupertinoSwitch/index.dart index 1daee323..d5f315b1 100644 --- a/lib/widgets/themes/Cupertino/CupertinoSwitch/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoSwitch/index.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_go/components/widget_demo.dart'; + import 'demo.dart'; const Text0 = ''' ### **简介** @@ -24,7 +25,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoSlider', - codeUrl: '/themes/Cupertino/CupertinoSwitch/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoSwitch/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoSwitch-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoTabBar/index.dart b/lib/widgets/themes/Cupertino/CupertinoTabBar/index.dart index 9aa300d1..641f8d96 100644 --- a/lib/widgets/themes/Cupertino/CupertinoTabBar/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoTabBar/index.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_go/components/widget_demo.dart'; + import 'demo.dart'; const Text0 = ''' ### **简介** @@ -32,7 +33,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoTabBar', - codeUrl: '/themes/Cupertino/CupertinoTabBar/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoTabBar/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoTabBar-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoTabScaffold/index.dart b/lib/widgets/themes/Cupertino/CupertinoTabScaffold/index.dart index 0243367d..ee25a4e7 100644 --- a/lib/widgets/themes/Cupertino/CupertinoTabScaffold/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoTabScaffold/index.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_go/components/widget_demo.dart'; + import 'demo.dart'; const Text0 = ''' ### **简介** @@ -38,7 +39,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoTabScaffold', - codeUrl: '/themes/Cupertino/CupertinoTabScaffold/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoTabScaffold/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoTabScaffold-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoTabView/index.dart b/lib/widgets/themes/Cupertino/CupertinoTabView/index.dart index 5cdb8516..214b7897 100644 --- a/lib/widgets/themes/Cupertino/CupertinoTabView/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoTabView/index.dart @@ -42,7 +42,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoTabView', - codeUrl: '/themes/Cupertino/CupertinoTabView/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoTabView/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoTabView-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Cupertino/CupertinoTimerPicker/index.dart b/lib/widgets/themes/Cupertino/CupertinoTimerPicker/index.dart index b6c3b24c..799db8a0 100644 --- a/lib/widgets/themes/Cupertino/CupertinoTimerPicker/index.dart +++ b/lib/widgets/themes/Cupertino/CupertinoTimerPicker/index.dart @@ -1,5 +1,7 @@ import 'package:flutter/material.dart'; + import 'package:flutter_go/components/widget_demo.dart'; + import 'demo.dart'; const Text0 = ''' ### **简介** @@ -38,7 +40,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'CupertinoTimerPicker', - codeUrl: '/themes/Cupertino/CupertinoTimerPicker/demo.dart', + codeUrl: 'themes/Cupertino/CupertinoTimerPicker/demo.dart', docUrl: 'https://docs.flutter.io/flutter/cupertino/CupertinoTimerPicker-class.html', contentList: [ Text0, diff --git a/lib/widgets/themes/Material/MaterialAccentColor/index.dart b/lib/widgets/themes/Material/MaterialAccentColor/index.dart index 4739e0d4..8f25f82d 100644 --- a/lib/widgets/themes/Material/MaterialAccentColor/index.dart +++ b/lib/widgets/themes/Material/MaterialAccentColor/index.dart @@ -28,7 +28,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'MaterialAccentColor', - codeUrl: 'themes/Material/MaterialAccentColor', + codeUrl: 'themes/Material/MaterialColor/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/MaterialAccentColor-class.html', contentList: [ diff --git a/lib/widgets/themes/Material/MaterialApp/index.dart b/lib/widgets/themes/Material/MaterialApp/index.dart index 9d545c77..fa3e540e 100644 --- a/lib/widgets/themes/Material/MaterialApp/index.dart +++ b/lib/widgets/themes/Material/MaterialApp/index.dart @@ -47,7 +47,7 @@ class _DemoState extends State { ], title: 'MaterialApp', docUrl: 'https://docs.flutter.io/flutter/material/MaterialApp-class.html', - codeUrl: '../main.dart', + codeUrl: 'themes/Material/MaterialApp/demo.dart', ); } } diff --git a/lib/widgets/themes/Material/MaterialButton/index.dart b/lib/widgets/themes/Material/MaterialButton/index.dart index 7716f8a5..4efa8c79 100644 --- a/lib/widgets/themes/Material/MaterialButton/index.dart +++ b/lib/widgets/themes/Material/MaterialButton/index.dart @@ -39,7 +39,7 @@ class _DemoState extends State { MaterialButtonDemo(), ], title: 'MaterialButton', - codeUrl: 'Material/MaterialButton/demo.dart', + codeUrl: 'themes/Material/MaterialButton/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/MaterialButton-class.html', ); diff --git a/lib/widgets/themes/Material/MaterialColor/index.dart b/lib/widgets/themes/Material/MaterialColor/index.dart index 2d115912..5789c94d 100644 --- a/lib/widgets/themes/Material/MaterialColor/index.dart +++ b/lib/widgets/themes/Material/MaterialColor/index.dart @@ -36,7 +36,7 @@ class _DemoState extends State { ColorDemo(), ], title: "MaterialColor", - codeUrl: 'Material/MaterialColor/demo.dart', + codeUrl: 'themes/Material/MaterialColor/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/MaterialColor-class.html', ); diff --git a/lib/widgets/themes/Material/MaterialPageRoute/index.dart b/lib/widgets/themes/Material/MaterialPageRoute/index.dart index f4060185..a93a03eb 100644 --- a/lib/widgets/themes/Material/MaterialPageRoute/index.dart +++ b/lib/widgets/themes/Material/MaterialPageRoute/index.dart @@ -27,7 +27,7 @@ class _DemoState extends State { Widget build(BuildContext context) { return WidgetDemo( title: 'MaterialPageRoute', - codeUrl: 'elements/themes/Material/MaterialPageRoute', + codeUrl: 'themes/Material/MaterialPageRoute/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/MaterialPageRoute-class.html', contentList: [ diff --git a/lib/widgets/themes/Material/MergeableMaterialItem/index.dart b/lib/widgets/themes/Material/MergeableMaterialItem/index.dart index 291de1f0..63d3682f 100644 --- a/lib/widgets/themes/Material/MergeableMaterialItem/index.dart +++ b/lib/widgets/themes/Material/MergeableMaterialItem/index.dart @@ -37,7 +37,7 @@ class _DemoState extends State { MergeableMaterialItemDemo(), ], title: "MergeableMaterialItem", - codeUrl: 'Material/MergeableMaterialItem/demo.dart', + codeUrl: 'themes/Material/MergeableMaterialItem/demo.dart', docUrl: 'https://docs.flutter.io/flutter/material/MergeableMaterialItem-class.html', ); diff --git a/pubspec.yaml b/pubspec.yaml index 225d8f53..5d69ac7e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -7,7 +7,7 @@ description: flutter_go # Both the version and the builder number may be overridden in flutter # build by specifying --build-name and --build-number, respectively. # Read more about versioning at semver.org. -version: 0.0.4 +version: 0.0.5 environment: sdk: ">=2.0.0-dev.68.0 <3.0.0" @@ -72,9 +72,11 @@ flutter: - lib/widgets/components/Grid/GridTile/demo.dart - lib/widgets/components/Grid/GridTileBar/demo.dart - lib/widgets/components/Grid/GridView/demo.dart - - lib/widgets/components/LIst/AnimatedList/demo.dart - - lib/widgets/components/LIst/ListBody/demo.dart - - lib/widgets/components/LIst/ListView/demo.dart + - lib/widgets/components/Grid/GridPaper/demo.dart + - lib/widgets/components/Grid/SliverGrid/demo.dart + - lib/widgets/components/List/AnimatedList/demo.dart + - lib/widgets/components/List/ListBody/demo.dart + - lib/widgets/components/List/ListView/demo.dart - lib/widgets/components/Menu/CheckedPopupMenuItem/demo.dart - lib/widgets/components/Menu/DropdownMenuItem/demo.dart - lib/widgets/components/Menu/PopupMenuButton/demo.dart @@ -128,6 +130,8 @@ flutter: - lib/widgets/elements/Frame/Box/RotatedBox/demo.dart - lib/widgets/elements/Frame/Box/SizeBox/demo.dart - lib/widgets/elements/Frame/Box/SizedOverflowBox/demo.dart + - lib/widgets/elements/Form/Text/Text/demo.dart + - lib/widgets/elements/Form/Text/RichText/index.dart - lib/widgets/elements/Frame/Box/UnconstrainedBox/demo.dart - lib/widgets/elements/Frame/Expanded/Expanded/expanded_demo.dart - lib/widgets/elements/Frame/Layout/Center/demo.dart @@ -162,17 +166,27 @@ flutter: - lib/widgets/themes/Material/MaterialColor/demo.dart - lib/widgets/themes/Material/MaterialPageRoute/demo.dart - lib/widgets/themes/Material/MergeableMaterialItem/demo.dart + - lib/widgets/themes/Cupertino/CupertinoApp/demo.dart + - lib/widgets/themes/Cupertino/CupertinoButton/demo.dart + - lib/widgets/themes/Cupertino/CupertinoColors/demo.dart + - lib/widgets/themes/Cupertino/CupertinoIcons/demo.dart + - lib/widgets/themes/Cupertino/CupertinoNavigationBar/demo.dart + - lib/widgets/themes/Cupertino/CupertinoPageRoute/demo.dart + - lib/widgets/themes/Cupertino/CupertinoPageScaffold/demo.dart + - lib/widgets/themes/Cupertino/CupertinoPicker/demo.dart + - lib/widgets/themes/Cupertino/CupertinoPopupSurface/demo.dart - lib/widgets/themes/Cupertino/CupertinoScrollbar/demo.dart - - lib/widgets/themes/Cupertino/CupertinoSlider/demo.dart - lib/widgets/themes/Cupertino/CupertinoSegmentedControl/demo.dart + - lib/widgets/themes/Cupertino/CupertinoSlider/demo.dart + - lib/widgets/themes/Cupertino/CupertinoSliverNavigationBar/demo.dart - lib/widgets/themes/Cupertino/CupertinoSwitch/demo.dart - lib/widgets/themes/Cupertino/CupertinoTabBar/demo.dart + - lib/widgets/themes/Cupertino/CupertinoTabScaffold/demo.dart - lib/widgets/themes/Cupertino/CupertinoTabView/demo.dart + - lib/widgets/themes/Cupertino/CupertinoTimerPicker/demo.dart - assets/app.db - assets/images/ - assets/fonts/ - - lib/utils/example_code_parser.dart - - lib/utils/syntax_highlighter.dart fonts: - family: FlamanteRoma