各控件的初始化,方法很多,屬性也不盡一致,只是自己寫例子時候用到並且爲了加深印象而寫的,方法一一記錄如下(發現新的更方便的隨時更改):
imageView:
class InitImageView extends StatefulWidget {
@override
_InitImageViewState createState() => _InitImageViewState();
}
class _InitImageViewState extends State<InitImageView> {
@override
Widget build(BuildContext context) {
return Container(
child: new Image(
image: NetworkImage("url"),
fit: BoxFit.fill,
alignment: Alignment.bottomCenter,
height: 80,
width: 100,
),
);
}
}
listView:
//listView
class InitListView extends StatefulWidget {
@override
_InitListViewState createState() => _InitListViewState();
}
class _InitListViewState extends State<InitListView> {
@override
Widget build(BuildContext context) {
return Container(
child: new ListView.builder(
itemBuilder: (context,index){
return new ListViewItem();
},
itemCount: 30,
),
);
}
}
class ListViewItem extends StatefulWidget {
@override
_ListViewItemState createState() => _ListViewItemState();
}
class _ListViewItemState extends State<ListViewItem> {
@override
Widget build(BuildContext context) {
return Container(
child: new Text(
"這是一段文字用來給Text這個文本顯示用的",
style: TextStyle(fontSize: 15,fontWeight: FontWeight.bold),
textAlign: TextAlign.justify,
softWrap: true,
),
);
}
}
Text:
//Text
class InitText extends StatefulWidget {
@override
_InitTextState createState() => _InitTextState();
}
class _InitTextState extends State<InitText> {
@override
Widget build(BuildContext context) {
return Container(
child: new Text(
"這是一段文字用來給Text這個文本顯示用的",
style: TextStyle(fontSize: 15,fontWeight: FontWeight.bold),
textAlign: TextAlign.justify,
softWrap: true,
),
);
}
}
APPbar:就是導航欄
Widget _naviBar(){
return AppBar(
title: Text("橫向滑動",style: TextStyle(fontSize: 15,fontWeight: FontWeight.bold),),
elevation: 0,
);
}
tabview:TabBar的view
Widget _tabView(){
return TabBarView(
controller: tabCtl,
children: titles.map((item){
return Container(
color: Colors.red,
child: Center(
child: Text(
item,
style: TextStyle(
fontSize: 15,
fontWeight: FontWeight.bold
),
),
),
);
}).toList(),
);
}
一個隨機變色的color:
Color _getColor(){
var random = new Random();
int r = random.nextInt(255);
int g = random.nextInt(255);
int b = random.nextInt(255);
print(r);
print(g);
print(b);
return Color.fromARGB(255, r, g, b);
}
實現ios中一個tableview+header+footer的樣式:使用CustomScrollView
SliverList 高度自動
SliverFixedExtentList 高度固定死,
itemExtent屬性就是高度設置
其他文章請查看個人博客:http://zhangqq166.cn/