flutter控件之ExpansionPanelList
import 'package:flutter/material.dart';
class LearnExpansionPanelList extends StatefulWidget{
@override
State<StatefulWidget> createState() {
return new _LearnExpansionPanelList();
}
}
class _LearnExpansionPanelList extends State<LearnExpansionPanelList>{
var currentPanelIndex=-1;//设置-1默认全部闭合
List<int> mList;
_LearnExpansionPanelList(){
mList=new List();
for(int i=0;i<5;i++){
mList.add(i);
}
}
@override
Widget build(BuildContext context) {
return new Scaffold(
body: new SingleChildScrollView(
child:new Column(
children: <Widget>[
new Text('这是一个自带的,样子挺丑的吧'),
new ExpansionPanelList(
expansionCallback: (panelIndex,isExpanded){
setState(() {
currentPanelIndex=(currentPanelIndex!=panelIndex?panelIndex:-1);
});
},
children: mList.map((i){
return new ExpansionPanel(
headerBuilder: (context,isExpanded){
return new ListTile(
title: new Text('这是标题$i'),
);
},
body:new Padding(
padding: EdgeInsets.all(30.0),
child:new ListBody(
children: <Widget>[
new Text('这是标题$i的内容'),
],
),
),
isExpanded: currentPanelIndex==i,
);
}).toList(),
),
new Text('拉一个好看点的吧,类似qq分组之类的'),
// new ListView.builder(
// itemBuilder: (BuildContext context, int index){
// return new ListTile(
// leading: new Icon(Icons.add),
// title: new Text('111'),
// );
// },
// itemCount: 1,
// ),
],
),
),
);
}
}
flutter控件之ExpansionPanelList的更多相关文章
- flutter控件之ListView滚动布局
ListView即滚动列表控件,能将子控件组成可滚动的列表.当你需要排列的子控件超出容器大小,就需要用到滚动块. import 'package:flutter/material.dart'; cla ...
- Flutter 控件之 AppBar 和 SliverAppBar
AppBar 和 SliverAppBar 是纸墨设计中的 App Bar,也就是 Android 中的 Toolbar,关于 Toolbar 的设计指南请参考纸墨设计中 Toolbar 的内容. A ...
- Flutter 控件之 Routes 和 Navigator. [PopupRoute]
一个 App 通常会有多个界面,每个界面实现不同的功能,并在多个界面之间跳转.在 Flutter 中多个界面的跳转是通过 Navigator 来实现的. 在 Flutter 中定义了一个 Overla ...
- flutter控件之CheckBox
import 'package:flutter/material.dart'; class LearnCheckBox extends StatefulWidget{ @override State& ...
- flutter控件之RadioButton
import 'package:flutter/material.dart'; class LearnRadioButton extends StatefulWidget{ @override Sta ...
- Flutter 的基本控件
文本控件 Text 支持两种类型的文本展示,一个是默认的展示单一样式文本 Text,另一个是支持多种混合样式的富文本 Text.rich. 单一样式文本 Text 单一样式文本 Text 的初始化,是 ...
- Flutter 布局控件完结篇
本文对Flutter的29种布局控件进行了总结分类,讲解一些布局上的优化策略,以及面对具体的布局时,如何去选择控件. 1. 系列文章 Flutter 布局详解 Flutter 布局(一)- Conta ...
- Flutter学习指南:UI布局和控件
Flutter学习指南:UI布局和控件 - IT程序猿 https://www.itcodemonkey.com/article/11041.html
- flutter Draggable Widget拖拽控件
Draggable Widget Draggable控件负责就是拖拽,父层使用了Draggable,它的子元素就是可以拖动的,子元素可以实容器,可以是图片.用起来非常的灵活. 参数说明: data: ...
随机推荐
- php.ini 开发和线上配置的差异
比对了一下php自带的php.ini-development和php.ini-production,备忘. display_errors = Ondisplay_startup_errors = On ...
- Python __all__变量用法
Python中一个py文件就是一个模块,“__all__”变量是一个特殊的变量,可以在py文件中,也可以在包的__init__.py中出现. 1.在普通模块中使用时,表示一个模块中允许哪些属性可以被导 ...
- getItemAt
getItemAt(0) 获得第一行数据 getItemAt(1) 获得第二行数据
- asp.net session锁导致ajax请求阻塞
问:为了可以顺序访问Session的状态值,Session是否提供了锁定机制?答:Session实现了Reader/Writer的锁机制:当页面对Session具有可写功能(即页面有<%@Pag ...
- 补充:ajax post 方式请求
1. 什么是ajax Ajax: asynchronous javascript and xml (异步js和xml) 其是可以与服务器进行(异步/同步)交互的技术之一. ajax的语言载体是j ...
- Docker数据卷
1.volume操作命名:docker volume Usage: docker volume COMMAND Manage Docker volumes Options: --he ...
- springboot:spring data jpa介绍
转载自:https://www.cnblogs.com/ityouknow/p/5891443.html 在上篇文章springboot(二):web综合开发中简单介绍了一下spring data j ...
- poj3278
#include<iostream> #define MAX 100001 int john,cow; int queue[MAX]; int vis[MAX]; int ans; voi ...
- day5_不能循环删除list-深拷贝、浅拷贝(import copy)
一.循环删list里面的元素,会导致下标错位,结果是不对的举例:想删除奇数 l = [1,1,1,2,3,4,5] for i in l: if i%2 !=0: l.remove(i) #删除后,导 ...
- centos6多实例安装mysql
基本环境:setenforce 0service iptables stop yum install cmake libaio-devel ncurses-devel -yyum install gc ...