refactor(conflict):

This commit is contained in:
sanfan.hx
2019-02-01 12:54:05 +08:00
189 changed files with 2675 additions and 964 deletions

View File

@ -30,8 +30,8 @@ class _AppBarLessDefaultComplex extends State with SingleTickerProviderStateMixi
@override
void initState() {
super.initState();
_scrollViewController = new ScrollController();
_tabController = new TabController(vsync: this, length: 6);// 和下面的 TabBar.tabs 数量对应
_scrollViewController = ScrollController();
_tabController = TabController(vsync: this, length: 6);// 和下面的 TabBar.tabs 数量对应
}
@override
@ -46,26 +46,26 @@ class _AppBarLessDefaultComplex extends State with SingleTickerProviderStateMixi
// 如果省略了 leading ,但 AppBar 在带有 Drawer 的 Scaffold 中,则会插入一个 button 以打开 Drawer。
// 否则,如果最近的 Navigator 具有任何先前的 router 则会插入BackButton。
// 这种行为可以通过设置来关闭automaticallyImplyLeading 为false。在这种情况下空的 leading widget 将导致 middle/title widget 拉伸开始。
return new SizedBox(
return SizedBox(
height: 500,
child:new AppBar( // 大量配置属性参考 SliverAppBar 示例
title: new Text('title'),
leading: new Icon(Icons.home),
child: AppBar( // 大量配置属性参考 SliverAppBar 示例
title: Text('title'),
leading: Icon(Icons.home),
backgroundColor: Colors.amber[500],
centerTitle: true,
actions: <Widget>[
new IconButton(
icon: new Icon(Icons.add_alarm),
IconButton(
icon: Icon(Icons.add_alarm),
tooltip: 'Add Alarm',
onPressed: () {
// do nothing
}),
new PopupMenuButton<String>(
PopupMenuButton<String>(
itemBuilder: (BuildContext context) => <PopupMenuItem<String>>[
new PopupMenuItem<String>(
value: "price", child: new Text('Sort by price')),
new PopupMenuItem<String>(
value: "time", child: new Text('Sort by time')),
PopupMenuItem<String>(
value: "price", child: Text('Sort by price')),
PopupMenuItem<String>(
value: "time", child: Text('Sort by time')),
],
onSelected: (String action) {
switch (action) {
@ -78,16 +78,16 @@ class _AppBarLessDefaultComplex extends State with SingleTickerProviderStateMixi
}
})
],
bottom: new TabBar(
bottom: TabBar(
isScrollable: true,
controller: _tabController,
tabs: <Widget>[
new Tab(text: "Tabs 1"),
new Tab(text: "Tabs 2"),
new Tab(text: "Tabs 3"),
new Tab(text: "Tabs 4"),
new Tab(text: "Tabs 5"),
new Tab(text: "Tabs 6"),
Tab(text: "Tabs 1"),
Tab(text: "Tabs 2"),
Tab(text: "Tabs 3"),
Tab(text: "Tabs 4"),
Tab(text: "Tabs 5"),
Tab(text: "Tabs 6"),
],
),
),
@ -107,7 +107,7 @@ class AppBarLessDefaultSimple extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new SizedBox(
return SizedBox(
height: 200,
child:AppBar(
title: Text('My Fancy Dress'),

View File

@ -62,7 +62,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDomes(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[
@ -84,7 +84,7 @@ Widget allDomes(BuildContext context, _DemoState that) {
* 带align的text
* */
Widget textAlignBar(String txt) {
return new Align(
return Align(
alignment: FractionalOffset.centerLeft,
child: Column(
children: <Widget>[

View File

@ -21,7 +21,7 @@ class AppBarLessDefaultSimple extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new SizedBox(
return SizedBox(
height: 100,
child: Scaffold(
//appBar: AppBar(title: const Text('Bottom App Bar')),

View File

@ -38,7 +38,7 @@ class _DemoState extends State<Demo> {
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',
);
@ -52,7 +52,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDomes(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[

View File

@ -44,9 +44,9 @@ class ButtonBarLessDefault extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
margin: new EdgeInsets.symmetric(vertical: 0.0),
margin: EdgeInsets.symmetric(vertical: 0.0),
height: 100.0,
child: new Scrollbar(child:ListView(
child: Scrollbar(child:ListView(
scrollDirection: Axis.horizontal, // 水平listView
children: <Widget>[
ButtonBar(

View File

@ -55,7 +55,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDomes(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[

View File

@ -54,7 +54,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDomes(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[

View File

@ -44,9 +44,9 @@ class SliverAppBarLessDefault extends StatelessWidget {
@override
Widget build(BuildContext context) {
for (int i = 0; i < 20; i++) {
listData.add(new ListItem("我是测试标题$i", Icons.cake));
listData.add( ListItem("我是测试标题$i", Icons.cake));
}
return new SizedBox(
return SizedBox(
height: 500.0,
child: NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
@ -89,7 +89,7 @@ class SliverAppBarLessDefault extends StatelessWidget {
// SliverPersistentHeader(
// delegate: _SliverAppBarDelegate(
// TabBar(
// controller: new TabController(length: 2, vsync: this),
// controller: TabController(length: 2, vsync: this),
// labelColor: Colors.black87,
// unselectedLabelColor: Colors.grey,
// tabs: [
@ -101,10 +101,10 @@ class SliverAppBarLessDefault extends StatelessWidget {
];
},
body: Center(
child: new ListView.builder(
child: ListView.builder(
shrinkWrap: true,
itemBuilder: (BuildContext context, int index) {
return new ListItemWidget(listData[index]);
return ListItemWidget(listData[index]);
},
itemCount: listData.length,
),
@ -127,10 +127,10 @@ class ListItemWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new InkWell(
child: new ListTile(
leading: new Icon(listItem.iconData),
title: new Text(listItem.title),
return InkWell(
child: ListTile(
leading: Icon(listItem.iconData),
title: Text(listItem.title),
),
onTap: () {},
);

View File

@ -40,7 +40,7 @@ class _DemoState extends State<Demo> {
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',
);
@ -54,7 +54,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDomes(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[
@ -71,7 +71,7 @@ Widget allDomes(BuildContext context, _DemoState that) {
* 带align的text
* */
Widget textAlignBar(String txt) {
return new Align(
return Align(
alignment: FractionalOffset.centerLeft,
child: Column(
children: <Widget>[

View File

@ -23,15 +23,15 @@ class SnackBarLessDefault extends StatelessWidget {
@override
Widget build(BuildContext context) {
// 当BuildContext在Scaffold之前时调用Scaffold.of(context)会报错。这时可以通过Builder Widget来解决
return new Center(
child: new Column(
return Center(
child: Column(
children: <Widget>[
new GestureDetector(
GestureDetector(
onTap: () {
final snackBar = new SnackBar(
content: new Text('这是一个SnackBar, 右侧有SnackBarAction'),
final snackBar = SnackBar(
content: Text('这是一个SnackBar, 右侧有SnackBarAction'),
backgroundColor:Colors.red,
action: new SnackBarAction( // 提示信息上添加一个撤消的按钮
action: SnackBarAction( // 提示信息上添加一个撤消的按钮
textColor:Colors.black,
label: '撤消',
onPressed: () {
@ -43,19 +43,19 @@ class SnackBarLessDefault extends StatelessWidget {
);
Scaffold.of(context).showSnackBar(snackBar);
},
child: new Text('显示SnackBar'),
child: Text('显示SnackBar'),
),
new GestureDetector(
GestureDetector(
onTap: () {
final snackBar = new SnackBar(
content: new Text('右侧无SnackBarAction'),
final snackBar = SnackBar(
content: Text('右侧无SnackBarAction'),
backgroundColor:Colors.red,
duration:Duration(minutes: 1),// 持续时间
//animation,
);
Scaffold.of(context).showSnackBar(snackBar);
},
child: new Text('显示无SnackBarAction的SnackBar'),
child: Text('显示无SnackBarAction的SnackBar'),
),
],
)

View File

@ -40,7 +40,7 @@ class _DemoState extends State<Demo> {
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',
);
@ -54,7 +54,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDomes(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[
@ -72,7 +72,7 @@ Widget allDomes(BuildContext context, _DemoState that) {
* 带align的text
* */
Widget textAlignBar(String txt) {
return new Align(
return Align(
alignment: FractionalOffset.centerLeft,
child: Column(
children: <Widget>[

View File

@ -16,15 +16,15 @@ class SnackBarActionDemo extends StatefulWidget {
class _Demo extends State<SnackBarActionDemo> {
Widget build(BuildContext context) {
return new Center(
child: new Column(
return Center(
child: Column(
children: <Widget>[
new RaisedButton(
onPressed: () {
final snackBar = new SnackBar(
content: new Text('这是一个SnackBar, 右侧有SnackBarAction, 3秒后消失'),
backgroundColor:Color(0xffc91b3a),
action: new SnackBarAction( // 提示信息上添加一个撤消的按钮
action: SnackBarAction( // 提示信息上添加一个撤消的按钮
textColor:Colors.white,
label: '撤消',
onPressed: () {
@ -37,7 +37,7 @@ class _Demo extends State<SnackBarActionDemo> {
Scaffold.of(context).showSnackBar(snackBar);
},
child: new Text('点我显示有action的SnackBar'),
child: Text('点我显示有action的SnackBar'),
),
new RaisedButton(
onPressed: () async {
@ -49,7 +49,7 @@ class _Demo extends State<SnackBarActionDemo> {
);
Scaffold.of(context).showSnackBar(snackBar);
},
child: new Text('点我显示无SnackBarAction的SnackBar'),
child: Text('点我显示无SnackBarAction的SnackBar'),
),
],
)

View File

@ -26,8 +26,8 @@ class _TabBarDemo extends State with SingleTickerProviderStateMixin {
@override
void initState() {
super.initState();
_scrollViewController = new ScrollController();
_tabController = new TabController(vsync: this, length: 6);// 和下面的 TabBar.tabs 数量对应
_scrollViewController = ScrollController();
_tabController = TabController(vsync: this, length: 6);// 和下面的 TabBar.tabs 数量对应
}
@override
@ -42,27 +42,27 @@ class _TabBarDemo extends State with SingleTickerProviderStateMixin {
// 如果省略了 leading ,但 AppBar 在带有 Drawer 的 Scaffold 中,则会插入一个 button 以打开 Drawer。
// 否则,如果最近的 Navigator 具有任何先前的 router 则会插入BackButton。
// 这种行为可以通过设置来关闭automaticallyImplyLeading 为false。在这种情况下空的 leading widget 将导致 middle/title widget 拉伸开始。
return new SizedBox(
return SizedBox(
height: 500,
child:new Scaffold(
appBar: new AppBar( // 大量配置属性参考 SliverAppBar 示例
title: new Text('TabBar'),
leading: new Icon(Icons.home),
child: Scaffold(
appBar: AppBar( // 大量配置属性参考 SliverAppBar 示例
title: Text('TabBar'),
leading: Icon(Icons.home),
backgroundColor: Colors.amber[1000],
bottom: new TabBar(
bottom: TabBar(
isScrollable: true,
controller: _tabController,
tabs: <Widget>[
new Tab(text: "Tabs 1"),
new Tab(text: "Tabs 2"),
new Tab(text: "Tabs 3"),
new Tab(text: "Tabs 4"),
new Tab(text: "Tabs 5"),
new Tab(text: "Tabs 6"),
Tab(text: "Tabs 1"),
Tab(text: "Tabs 2"),
Tab(text: "Tabs 3"),
Tab(text: "Tabs 4"),
Tab(text: "Tabs 5"),
Tab(text: "Tabs 6"),
],
),
),
body: new TabBarView(controller: _tabController, children: <Widget>[
body: TabBarView(controller: _tabController, children: <Widget>[
Text('TabsView 1'),
Text('TabsView 2'),
Text('TabsView 3'),

View File

@ -50,9 +50,9 @@ class CardLessDefault extends StatelessWidget {
margin:EdgeInsets.all(20.0),
// margin: EdgeInsetsDirectional.only(bottom: 30.0, top: 30.0, start: 30.0),// 边距
semanticContainer:true, // 表示单个语义容器还是false表示单个语义节点的集合接受单个child但该child可以是RowColumn或其他包含子级列表的widget
// shape:new Border.all(
// shape: Border.all(
// color: Colors.indigo, width: 1.0, style: BorderStyle.solid), // 卡片材质的形状,以及边框
shape:RoundedRectangleBorder(borderRadius: new BorderRadius.circular(20.0)), // 圆角
shape:RoundedRectangleBorder(borderRadius: BorderRadius.circular(20.0)), // 圆角
//borderRadius: BorderRadius.all(Radius.circular(8.0)),
child: Column( //card里面的子控件
mainAxisSize: MainAxisSize.min,

View File

@ -52,7 +52,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDomes(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[

View File

@ -19,9 +19,9 @@ class _Demo extends State<AboutDialogDemo> {
void showAlertDialog(BuildContext context) {
showDialog(
context: context,
builder: (_) => new AboutDialog(
builder: (_) => AboutDialog(
applicationName: '名称',
applicationIcon: new Icon(Icons.ac_unit),
applicationIcon: Icon(Icons.ac_unit),
applicationVersion: 'V1.0',
children: <Widget>[
Text('我是一个关于的dialog')
@ -29,12 +29,12 @@ class _Demo extends State<AboutDialogDemo> {
));
}
Widget build(BuildContext context) {
return new RaisedButton(
padding: new EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
return RaisedButton(
padding: EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
//padding
child: new Text(
child: Text(
'show aboutDialog',
style: new TextStyle(
style: TextStyle(
fontSize: 18.0, //textsize
color: Colors.white, // textcolor
),

View File

@ -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<AlertDialogDemo> {
void showAlertDialog(BuildContext context) {
showDialog<void>(
context: context,
@ -122,12 +119,12 @@ class _Demo extends State<AlertDialogDemo> {
);
}
Widget build(BuildContext context) {
return new RaisedButton(
padding: new EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
return RaisedButton(
padding: EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
//padding
child: new Text(
child: Text(
'点我显示 AlertDialog',
style: new TextStyle(
style: TextStyle(
fontSize: 18.0, //textsize
color: Colors.white, // textcolor
),
@ -141,3 +138,8 @@ class _Demo extends State<AlertDialogDemo> {
});
}
}
// class _Demo extends State<AlertDialogDemo> {
// }

View File

@ -42,12 +42,12 @@ class _Demo extends State<DialogDemo> {
);
}
Widget build(BuildContext context) {
return new RaisedButton(
padding: new EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
return RaisedButton(
padding: EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
//padding
child: new Text(
child: Text(
'点我显示 Dialog',
style: new TextStyle(
style: TextStyle(
fontSize: 18.0, //textsize
color: Colors.white, // textcolor
),
@ -108,14 +108,14 @@ class _DialogMoreDemo extends State<DialogMoreDemo> {
);
}
Widget build(BuildContext context) {
return new Column(
return Column(
children: <Widget>[
new RaisedButton(
padding: new EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
RaisedButton(
padding: EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
//padding
child: new Text(
child: Text(
'点我显示Dialog',
style: new TextStyle(
style: TextStyle(
fontSize: 18.0, //textsize
color: Colors.white, // textcolor
),

View File

@ -20,17 +20,17 @@ class _Demo extends State<SimpleDialogDemo> {
showDialog<Null>(
context: context,
builder: (BuildContext context) {
return new SimpleDialog(
title: new Text('选择'),
return SimpleDialog(
title: Text('选择'),
children: <Widget>[
new SimpleDialogOption(
child: new Text('选项 1'),
SimpleDialogOption(
child: Text('选项 1'),
onPressed: () {
Navigator.of(context).pop();
},
),
new SimpleDialogOption(
child: new Text('选项 2'),
SimpleDialogOption(
child: Text('选项 2'),
onPressed: () {
Navigator.of(context).pop();
},
@ -41,12 +41,12 @@ class _Demo extends State<SimpleDialogDemo> {
);
}
Widget build(BuildContext context) {
return new RaisedButton(
padding: new EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
return RaisedButton(
padding: EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 10.0),
//padding
child: new Text(
child: Text(
'show SimpleDialog',
style: new TextStyle(
style: TextStyle(
fontSize: 18.0, //textsize
color: Colors.white, // textcolor
),

View File

@ -21,7 +21,7 @@ class _Demo extends State<GridPaperDemo> {
return Container(
height: 400,
color: Color(0xffc91b3a),
child: new GridView.count(
child: GridView.count(
crossAxisCount: 2,
mainAxisSpacing: 10.0,
crossAxisSpacing: 4.0,
@ -40,21 +40,21 @@ class _Demo extends State<GridPaperDemo> {
),
GridPaper(
color: Colors.red,
child: new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
child: Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
],
)
);

View File

@ -21,7 +21,7 @@ class _Demo extends State<GridTileDemo> {
return Container(
height: 400,
color: Color(0xffc91b3a),
child: new GridView.count(
child: GridView.count(
crossAxisCount: 2,
mainAxisSpacing: 10.0,
crossAxisSpacing: 4.0,
@ -36,21 +36,21 @@ class _Demo extends State<GridTileDemo> {
),
footer: Text("GridTile footer", style: TextStyle(color: Colors.white)),
),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
],
)
);

View File

@ -21,7 +21,7 @@ class _Demo extends State<GridTileDemo> {
return Container(
height: 400,
color: Color(0xffc91b3a),
child: new GridView.count(
child: GridView.count(
crossAxisCount: 2,
mainAxisSpacing: 10.0,
crossAxisSpacing: 4.0,
@ -38,21 +38,21 @@ class _Demo extends State<GridTileDemo> {
child: Container(),
),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
],
)
);

View File

@ -21,7 +21,7 @@ class _Demo extends State<GridTileDemo> {
return Container(
height: 400,
color: Color(0xffc91b3a),
child: new GridView.count(
child: GridView.count(
crossAxisCount: 2,
mainAxisSpacing: 10.0,
crossAxisSpacing: 4.0,
@ -38,21 +38,21 @@ class _Demo extends State<GridTileDemo> {
child: Container(),
),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
new Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
Image.network('https://flutter.io/assets/homepage/news-2-599aefd56e8aa903ded69500ef4102cdd8f988dab8d9e4d570de18bdb702ffd4.png', scale: 1, fit: BoxFit.cover),
],
)
);

View File

@ -17,34 +17,34 @@ class SliverGridDemo extends StatefulWidget {
class _Demo extends State<SliverGridDemo> {
Widget showCustomScrollView() {
return new CustomScrollView(
return CustomScrollView(
slivers: <Widget>[
new SliverGrid(
gridDelegate: new SliverGridDelegateWithMaxCrossAxisExtent(
SliverGrid(
gridDelegate: SliverGridDelegateWithMaxCrossAxisExtent(
maxCrossAxisExtent: 200.0,
mainAxisSpacing: 10.0,
crossAxisSpacing: 10.0,
childAspectRatio: 4.0,
),
delegate: new SliverChildBuilderDelegate(
delegate: SliverChildBuilderDelegate(
(BuildContext context, int index) {
return new Container(
return Container(
alignment: Alignment.center,
color: Colors.cyan[100 * (index % 5)],
child: new Text('grid item $index'),
child: Text('grid item $index'),
);
},
childCount: 20,
),
),
// new SliverFixedExtentList(
// SliverFixedExtentList(
// itemExtent: 100.0,
// delegate: new SliverChildBuilderDelegate(
// delegate: SliverChildBuilderDelegate(
// (BuildContext context, int index) {
// return new Container(
// return Container(
// alignment: Alignment.center,
// color: Colors.lightBlue[100 * (index % 9)],
// child: new Text('list item $index'),
// child: Text('list item $index'),
// );
// },
// ),

View File

@ -40,7 +40,7 @@ class _DemoState extends State<Demo> {
Widget build(BuildContext context) {
return WidgetDemo(
title: 'SliverGrid',
codeUrl: 'components/Grid/GridPaper/demo.dart',
codeUrl: 'components/Grid/SliverGrid/demo.dart',
contentList: [
_Text0,
SliverGridDemo(),

View File

@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_go/widgets/components/LIst/AnimatedList/model.dart';
import 'package:flutter_go/widgets/components/List/AnimatedList/model.dart';
class AnimatedListFullDefault extends StatefulWidget {
AnimatedListFullDefault({Key key, this.parent}) : super(key: key);
@ -15,7 +15,7 @@ class AnimatedListFullDefault extends StatefulWidget {
* AnimatedList ,
* */
class _AnimatedListFullDefault extends State<AnimatedListFullDefault> {
final GlobalKey<AnimatedListState> _listKey = new GlobalKey<AnimatedListState>();
final GlobalKey<AnimatedListState> _listKey = GlobalKey<AnimatedListState>();
ListModel<int> _list;
int _selectedItem;
int _nextItem; // The next item inserted when the user presses the '+' button.
@ -26,7 +26,7 @@ class _AnimatedListFullDefault extends State<AnimatedListFullDefault> {
if (widget.parent is State) {
widget.parent.animatedList = this; //
}
_list = new ListModel<int>(
_list = ListModel<int>(
listKey: _listKey,
initialItems: <int>[0, 1, 2],
removedItemBuilder: _buildRemovedItem,
@ -50,7 +50,7 @@ class _AnimatedListFullDefault extends State<AnimatedListFullDefault> {
}
Widget _buildItem(BuildContext context, int index, Animation<double> animation) {
return new CardItem(
return CardItem(
animation: animation,
item: _list[index],
selected: _selectedItem == _list[index],
@ -63,7 +63,7 @@ class _AnimatedListFullDefault extends State<AnimatedListFullDefault> {
}
Widget _buildRemovedItem(int item, BuildContext context, Animation<double> animation) {
return new CardItem(
return CardItem(
animation: animation,
item: item,
selected: false,
@ -107,20 +107,20 @@ class CardItem extends StatelessWidget {
TextStyle textStyle = Theme.of(context).textTheme.display1;
if (selected)
textStyle = textStyle.copyWith(color: Colors.lightGreenAccent[400]);
return new Padding(
return Padding(
padding: const EdgeInsets.all(2.0),
child: new SizeTransition(
child: SizeTransition(
axis: Axis.vertical,
sizeFactor: animation,
child: new GestureDetector(
child: GestureDetector(
behavior: HitTestBehavior.opaque,
onTap: onTap,
child: new SizedBox(
child: SizedBox(
height: 128.0,
child: new Card(
child: Card(
color: Colors.primaries[item % Colors.primaries.length],
child: new Center(
child: new Text('Item $item', style: textStyle),
child: Center(
child: Text('Item $item', style: textStyle),
),
),
),

View File

@ -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();
@ -58,7 +58,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDemoBoxs(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[

View File

@ -25,7 +25,7 @@ class ListModel<E> {
Iterable<E> initialItems,
}) : assert(listKey != null),
assert(removedItemBuilder != null),
_items = new List<E>.from(initialItems ?? <E>[]);
_items = List<E>.from(initialItems ?? <E>[]);
final GlobalKey<AnimatedListState> listKey;
final dynamic removedItemBuilder;

View File

@ -55,7 +55,7 @@ class _DemoState extends State<Demo> {
*/
Widget allCheckboxs(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[

View File

@ -67,7 +67,7 @@ class _DemoState extends State<Demo> {
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',
);
@ -81,7 +81,7 @@ class _DemoState extends State<Demo> {
*/
Widget allCheckboxs(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[
@ -107,7 +107,7 @@ Widget allCheckboxs(BuildContext context, _DemoState that) {
* align的text
* */
Widget textAlignBar(String txt) {
return new Align(
return Align(
alignment: FractionalOffset.centerLeft,
child: Column(
children: <Widget>[

View File

@ -36,8 +36,8 @@ class _CheckedPopupMenuItemDemoState extends State<CheckedPopupMenuItemDemo> {
_checkedValues.add(value);
}
Scaffold.of(context).showSnackBar(new SnackBar(
content: new Text('Checked $_checkedValues')));
Scaffold.of(context).showSnackBar( SnackBar(
content: Text('Checked $_checkedValues')));
}
@override

View File

@ -19,8 +19,8 @@ class _PopupMenuButtonDemoState extends State<PopupMenuButtonDemo> {
void showMenuSelection(String value) {
if (<String>[_simpleValue1, _simpleValue2, _simpleValue3].contains(value))
_simpleValue = value;
Scaffold.of(context).showSnackBar(new SnackBar(
content: new Text('You selected: $value')));
Scaffold.of(context).showSnackBar( SnackBar(
content: Text('You selected: $value')));
}

View File

@ -13,7 +13,7 @@ class PopupMenuDividerDemo extends StatefulWidget {
class _PopupMenuDividerDemoState extends State<PopupMenuDividerDemo> {
void showInSnackBar(String value) {
Scaffold.of(context)
.showSnackBar(new SnackBar(content: new Text('You selected: $value')));
.showSnackBar( SnackBar(content: Text('You selected: $value')));
}
@override

View File

@ -18,7 +18,7 @@ const String content0 = '''
const String content1 = '''
### **基本用法**
> 此widget通过调整Divider widget 来适应于弹出菜单中
- 在 PopupMenuButton 中直接 new PopupMenuDivider() 即可
- 在 PopupMenuButton 中直接 PopupMenuDivider() 即可
''';
class Demo extends StatefulWidget {

View File

@ -34,7 +34,7 @@ class _DemoState extends State<Demo> {
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',
);
}

View File

@ -34,7 +34,7 @@ class _DemoState extends State<Demo> {
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',
);
}

View File

@ -40,17 +40,17 @@ class _BottomNavigationBarFullDefault extends State {
fixedColor: Colors.deepPurple, // 如果 type 类型为 fixed则通过 fixedColor 设置选中 item 的颜色
items: <BottomNavigationBarItem> [
BottomNavigationBarItem(
title: new Text("Home"), icon: new Icon(Icons.home)),
title: Text("Home"), icon: Icon(Icons.home)),
BottomNavigationBarItem(
title: new Text("List"), icon: new Icon(Icons.list)),
title: Text("List"), icon: Icon(Icons.list)),
BottomNavigationBarItem(
title: new Text("Message"), icon: new Icon(Icons.message)),
title: Text("Message"), icon: Icon(Icons.message)),
BottomNavigationBarItem(
title: new Text("add"), icon: new Icon(Icons.add)),
title: Text("add"), icon: Icon(Icons.add)),
BottomNavigationBarItem(
title: new Text("menu"), icon: new Icon(Icons.menu)),
title: Text("menu"), icon: Icon(Icons.menu)),
BottomNavigationBarItem(
title: new Text("other"), icon: new Icon(Icons.devices_other)),
title: Text("other"), icon: Icon(Icons.devices_other)),
],
);

View File

@ -57,7 +57,7 @@ class _DemoState extends State<Demo> {
*/
Widget allDemoBoxs(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[
@ -79,7 +79,7 @@ Widget allDemoBoxs(BuildContext context, _DemoState that) {
* 带align的text
* */
Widget textAlignBar(String txt) {
return new Align(
return Align(
alignment: FractionalOffset.centerLeft,
child: Column(
children: <Widget>[

View File

@ -21,20 +21,20 @@ class BottomNavigationBarItemLessDefault extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new SizedBox(
return SizedBox(
height: 100,
child: Scaffold(
bottomNavigationBar: new BottomNavigationBar(items: [
new BottomNavigationBarItem(
icon: new Icon(Icons.laptop_chromebook),
title: new Text("主页"),
bottomNavigationBar: BottomNavigationBar(items: [
BottomNavigationBarItem(
icon: Icon(Icons.laptop_chromebook),
title: Text("主页"),
backgroundColor: Colors.red
),
new BottomNavigationBarItem(
icon: new Icon(Icons.list), title: new Text("分类"),backgroundColor: Colors.grey),
new BottomNavigationBarItem(
icon: new Icon(Icons.local_grocery_store), title: new Text("购物车")),
new BottomNavigationBarItem(icon: new Icon(Icons.person), title: new Text("我的"))
BottomNavigationBarItem(
icon: Icon(Icons.list), title: Text("分类"),backgroundColor: Colors.grey),
BottomNavigationBarItem(
icon: Icon(Icons.local_grocery_store), title: Text("购物车")),
BottomNavigationBarItem(icon: Icon(Icons.person), title: Text("我的"))
],
//onTap: onTap,
//currentIndex: page
@ -46,13 +46,13 @@ class BottomNavigationBarItemLessDefault extends StatelessWidget {
//backgroundColor: Colors.grey,
//
//// body: new PageView(
//// body: PageView(
////
//// children: [
//// new Index(),
//// new Classify(),
//// new Shopping(),
//// new Myself()
//// Index(),
//// Classify(),
//// Shopping(),
//// Myself()
//// ],
////
//// controller: pageController,

View File

@ -52,7 +52,7 @@ class _DemoState extends State<Demo> {
*/
Widget allCheckboxs(BuildContext context, _DemoState that) {
return Container(
//padding: new EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
//padding: EdgeInsets.only(bottom: 20.0, top: 20.0, left: 0, right: 0),
child: Column(
//mainAxisSize: MainAxisSize.max,
children: <Widget>[
@ -70,7 +70,7 @@ Widget allCheckboxs(BuildContext context, _DemoState that) {
* 带align的text
* */
Widget textAlignBar(String txt) {
return new Align(
return Align(
alignment: FractionalOffset.centerLeft,
child: Column(
children: <Widget>[

View File

@ -14,8 +14,8 @@ class DayPickerDemo extends StatefulWidget {
}
class _DayPickerState extends State<DayPickerDemo> {
DateTime _date = new DateTime.now();
TimeOfDay _time = new TimeOfDay.now();
DateTime _date = DateTime.now();
TimeOfDay _time = TimeOfDay.now();
Future<void> _selectDate(BuildContext context) async {
final DateTime picked = await showDatePicker(
@ -29,7 +29,7 @@ class _DayPickerState extends State<DayPickerDemo> {
_date = picked;
});
if (picked == null) _date = new DateTime.now();
if (picked == null) _date = DateTime.now();
}
Future<void> _selectTime(BuildContext context) async {
@ -40,23 +40,23 @@ class _DayPickerState extends State<DayPickerDemo> {
setState(() {
_time = picked;
});
if (picked == null) _time = new TimeOfDay.now();
if (picked == null) _time = TimeOfDay.now();
}
@override
Widget build(BuildContext context) {
return new Column(
return Column(
children: <Widget>[
new Text('日期选择'),
new RaisedButton(
child: new Text('date selected:${_date.toString()}'),
Text('日期选择'),
RaisedButton(
child: Text('date selected:${_date.toString()}'),
onPressed: () {
_selectDate(context);
},
),
new Text('时间选择'),
new RaisedButton(
child: new Text('date selected:${_time.toString()}'),
Text('时间选择'),
RaisedButton(
child: Text('date selected:${_time.toString()}'),
onPressed: () {
_selectTime(context);
},

View File

@ -14,7 +14,7 @@ class MothPickerDemo extends StatefulWidget {
}
class _MothPickerState extends State<MothPickerDemo> {
DateTime _date = new DateTime.now();
DateTime _date = DateTime.now();
Future<void> _selectDate(BuildContext context) async {
final DateTime picked = await showDatePicker(
@ -28,16 +28,16 @@ class _MothPickerState extends State<MothPickerDemo> {
_date = picked;
});
if (picked == null) _date = new DateTime.now();
if (picked == null) _date = DateTime.now();
}
@override
Widget build(BuildContext context) {
return new Column(
return Column(
children: <Widget>[
new Text('日期选择'),
new RaisedButton(
child: new Text('date selected:${_date.toString()}'),
Text('日期选择'),
RaisedButton(
child: Text('date selected:${_date.toString()}'),
onPressed: () {
_selectDate(context);
},

View File

@ -14,8 +14,8 @@ class ShowDatePickerDemo extends StatefulWidget {
}
class _ShowDatePickerState extends State<ShowDatePickerDemo> {
DateTime _date = new DateTime.now();
TimeOfDay _time = new TimeOfDay.now();
DateTime _date = DateTime.now();
TimeOfDay _time = TimeOfDay.now();
Future<void> _selectDate(BuildContext context) async {
final DateTime picked = await showDatePicker(
@ -29,7 +29,7 @@ class _ShowDatePickerState extends State<ShowDatePickerDemo> {
_date = picked;
});
if (picked == null) _date = new DateTime.now();
if (picked == null) _date = DateTime.now();
}
Future<void> _selectTime(BuildContext context) async {
@ -40,23 +40,23 @@ class _ShowDatePickerState extends State<ShowDatePickerDemo> {
setState(() {
_time = picked;
});
if (picked == null) _time = new TimeOfDay.now();
if (picked == null) _time = TimeOfDay.now();
}
@override
Widget build(BuildContext context) {
return new Column(
return Column(
children: <Widget>[
new Text('日期选择'),
new RaisedButton(
child: new Text('date selected:${_date.toString()}'),
Text('日期选择'),
RaisedButton(
child: Text('date selected:${_date.toString()}'),
onPressed: () {
_selectDate(context);
},
),
new Text('时间选择'),
new RaisedButton(
child: new Text('date selected:${_time.toString()}'),
Text('时间选择'),
RaisedButton(
child: Text('date selected:${_time.toString()}'),
onPressed: () {
_selectTime(context);
},

View File

@ -14,7 +14,7 @@ class YearPickerDemo extends StatefulWidget {
}
class _YearPickerDemoState extends State<YearPickerDemo> {
DateTime _date = new DateTime.now();
DateTime _date = DateTime.now();
Future<void> _selectDate(BuildContext context) async {
final DateTime picked = await showDatePicker(
@ -28,16 +28,16 @@ class _YearPickerDemoState extends State<YearPickerDemo> {
_date = picked;
});
if (picked == null) _date = new DateTime.now();
if (picked == null) _date = DateTime.now();
}
@override
Widget build(BuildContext context) {
return new Column(
return Column(
children: <Widget>[
new Text('日期选择'),
new RaisedButton(
child: new Text('date selected:${_date.toString()}'),
Text('日期选择'),
RaisedButton(
child: Text('date selected:${_date.toString()}'),
onPressed: () {
_selectDate(context);
},

View File

@ -38,7 +38,7 @@ class _DemoState extends State<Demo> {
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');

View File

@ -38,7 +38,7 @@ class _DemoState extends State<Demo> {
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');

View File

@ -35,7 +35,7 @@ class _DemoState extends State<Demo> {
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');
}

View File

@ -37,9 +37,9 @@ class _ScaffoldDemo extends State with SingleTickerProviderStateMixin {
// 如果省略了 leading ,但 AppBar 在带有 Drawer 的 Scaffold 中,则会插入一个 button 以打开 Drawer。
// 否则,如果最近的 Navigator 具有任何先前的 router 则会插入BackButton。
// 这种行为可以通过设置来关闭automaticallyImplyLeading 为false。在这种情况下空的 leading widget 将导致 middle/title widget 拉伸开始。
return new SizedBox(
return SizedBox(
height: 500,
child: new Scaffold(
child: Scaffold(
appBar: AppBar(
title: Text('Sample Code'),
),

View File

@ -56,7 +56,7 @@ class _DemoState extends State<Demo> {
codeUrl: 'components/Scaffold/Scaffold/demo.dart',
contentList: [
_Text0,
new ScaffoldDemo(),
ScaffoldDemo(),
],
docUrl: 'https://docs.flutter.io/flutter/material/Scaffold-class.html',
);

View File

@ -28,9 +28,9 @@ class _ScaffoldStateDemo extends State with SingleTickerProviderStateMixin {
// 如果省略了 leading ,但 AppBar 在带有 Drawer 的 Scaffold 中,则会插入一个 button 以打开 Drawer。
// 否则,如果最近的 Navigator 具有任何先前的 router 则会插入BackButton。
// 这种行为可以通过设置来关闭automaticallyImplyLeading 为false。在这种情况下空的 leading widget 将导致 middle/title widget 拉伸开始。
return new SizedBox(
return SizedBox(
height: 500,
child:new Scaffold(
child: Scaffold(
key:_scaffoldKey,
appBar: AppBar(
title: Text('ScaffoldState Demo'),

View File

@ -11,7 +11,7 @@ class ScrollPhysicsDemo extends StatefulWidget {
}
class _ScrollPhysicsDemoState extends State<ScrollPhysicsDemo> {
final PageController _pageController = new PageController();
final PageController _pageController = PageController();
double _currentPage = 0.0;
@override
@ -54,21 +54,21 @@ class _SimplePage extends StatelessWidget {
final double parallaxOffset;
@override
Widget build(BuildContext context) => new Center(
Widget build(BuildContext context) => Center(
child: Container(
color: Theme.of(context).primaryColor,
child: new Center(
child: new Column(
child: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
new Text(
Text(
data,
style: const TextStyle(fontSize: 60.0,color: Colors.white),
),
new SizedBox(height: 40.0),
new Transform(
SizedBox(height: 40.0),
Transform(
transform:
new Matrix4.translationValues(parallaxOffset, 0.0, 0.0),
Matrix4.translationValues(parallaxOffset, 0.0, 0.0),
child: const Text('左右滑动,这是第二行滚动速度更快的小字',style: const TextStyle(fontSize: 16.0,color: Colors.white),),
),
],