merge devlop

This commit is contained in:
jianping.xwh
2019-01-08 19:18:12 +08:00
parent 49b86b4c70
commit 94bd8510c0
114 changed files with 6715 additions and 336 deletions

View File

@ -0,0 +1,49 @@
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
/**
* Author: xiaojia.dxj
* Date: 2018/12/2
* Email: xiaojia.dxj@alibaba-inc.com
* LastUpdateTime: 2018/12/2
* LastUpdateBy: xj.deng
*
* Describle:FittedBox
*/
class FittedBoxDefault extends StatelessWidget {
final BoxFit curfit;
String dec;
FittedBoxDefault({Key key, BoxFit this.curfit, this.dec});
@override
Widget build(BuildContext context) {
return new Column(
children: <Widget>[
Container(
//外部有位置约束,内部大小设定失效,保持和外部约束一致
height: 100.0,
width: 100.0,
color: Colors.yellow,
child: FittedBox(
fit: curfit,
// 修改child写入布局时期分配的空间
alignment: Alignment.center,
//alignment修改child于父空间对齐方式默认Alignment.center,
child: Container(
// height: 50.0,
// width: 50.0,
color: Colors.red,
child: Text(
'fittedBox',
style: TextStyle(color: Colors.white),
),
),
),
),
Text(dec),
],
);
}
}

View File

@ -0,0 +1,108 @@
/**
* Author: xiaojia.dxj
* Date: 2019-01-08
* Email: xiaojia.dxj@alibaba-inc.com
* LastUpdateTime: 2019-01-08
* LastUpdateBy: xj.deng
*
*/
import 'package:flutter/material.dart';
import '../../../../../common/widget_demo.dart';
import './demo.dart' as fittedBox;
const String Text0 = """
### **FittedBox**
> 根据自己的需要对child进行缩放和定位
- 可以看看变换在绘制时任意变换应用在子窗口的widget
""";
const String Text1 = """
### **基本用法**
> 根据外部约束调整child
- 如果外部没有约束按照child的大小。
- 如果外部有约束按照外部约束调整自身大小然后缩放调整child根据条件进行放置
- BoxFix 属性修改child写入布局时期分配的空间
- alignment修改child于父空间对齐方式默认Alignment.center,
""";
class Demo extends StatefulWidget {
static const String routeName = '/element/Frame/Box/FittedBox';
_DemoState createState() => _DemoState();
}
class _DemoState extends State<Demo> {
@override
Widget build(BuildContext context) {
return WidgetDemo(
title: 'FittedBox',
codeUrl: 'elements/Frame/Box/Fittedbox/demo.dart',
docUrl: 'https://docs.flutter.io/flutter/widgets/FittedBox-class.html',
contentList: [
Text0,
Text1,
_FittedBoxCreate(),
],
);
}
Column _FittedBoxCreate() {
return Column(
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[
fittedBox.FittedBoxDefault(
/**
* 设置child写入布局期间分配空间
*/
curfit: BoxFit.contain,
dec: 'contain',
),
fittedBox.FittedBoxDefault(
curfit: BoxFit.fill,
dec: 'fill',
),
fittedBox.FittedBoxDefault(
curfit: BoxFit.cover,
dec: 'cover',
),
],
),
SizedBox(
height: 20.0,
),
Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[
fittedBox.FittedBoxDefault(
curfit: BoxFit.fitHeight,
dec: 'fitHeight',
),
fittedBox.FittedBoxDefault(
curfit: BoxFit.fitWidth,
dec: 'fitWidth',
),
],
),
SizedBox(
height: 20.0,
),
Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[
fittedBox.FittedBoxDefault(
curfit: BoxFit.none,
dec: 'none',
),
fittedBox.FittedBoxDefault(
curfit: BoxFit.scaleDown,
dec: 'scaleDown',
),
],
),
],
);
}
}