Files
2019-08-13 20:38:46 +08:00

62 lines
1.7 KiB
Dart

/// Created with Android Studio.
/// User: 一晟
/// Date: 2019/1/1
/// Time: 下午10:38
/// email: zhu.yan@alibaba-inc.com
/// target: FlexibleSpaceBar 的示例
import 'package:flutter_go/components/widget_demo.dart';
import 'package:flutter_web/material.dart';
import './demo.dart' as FlexibleSpaceBarDemo;
const String _Text0 =
"""### **简介**
> FlexibleSpaceBar “扩展和折叠的应用栏”
- AppBar 的一部分,可以扩展和折叠;
""";
const String _Text1 =
"""### **基本用法**
> 最常用于 SliverAppBar.flexibleSpace 字段
- 灵活的空格键随着应用滚动而扩展和收缩,以便 AppBar 从应用程序的顶部到达应用程序滚动内容的顶部;
- 要调整 AppBar 大小,必须将其包装在 FlexibleSpaceBar.createSettings 返回的 widget 中 ,以将大小调整信息传递给 FlexibleSpaceBar;
""";
class Demo extends StatefulWidget {
static const String routeName = '/components/Bar/FlexibleSpaceBar';
@override
_DemoState createState() => _DemoState();
}
class _DemoState extends State<Demo> {
@override
Widget build(BuildContext context) {
return WidgetDemo(
title: 'FlexibleSpaceBar',
codeUrl: 'components/Bar/FlexibleSpaceBar/demo.dart',
contentList: allDomes(context, this),
docUrl: 'https://docs.flutter.io/flutter/material/FlexibleSpaceBar-class.html',
);
}
}
// 所有的 FlexibleSpaceBar widget
// context: 运行上下文
// that: 指向有状态的 StatefulWidget
List allDomes(BuildContext context, _DemoState that) {
return [
_Text0,
SizedBox(height: 20.0), // 间距
_Text1,
SizedBox(height: 20.0), // 间距
FlexibleSpaceBarDemo.FlexibleSpaceBarLessDefault(),
SizedBox(height: 20.0), // 间距
];
}