请检查以下代码。不管我怎么尝试,SizeTransition在列中都不是水平居中的。我尝试将列包装在容器中,然后提供无限宽度。我试着把SizeTransition包装在一个中心里。我尝试将SizeTransition包装在一个具有中心对齐属性的容器中。我试着把它包装在一个堆栈中。我尝试给具有对齐中心属性的容器子级...但它们都不起作用。
class MyWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(),
body: AnimatedBox(),
);
}
}
class AnimatedBox extends StatefulWidget {
@override
createState() => _AnimatedBoxState();
}
class _AnimatedBoxState extends State<AnimatedBox> with SingleTickerProviderStateMixin {
AnimationController _controller;
@override
void initState() {
super.initState();
_controller = AnimationController(
vsync: this,
duration: Duration(milliseconds: 400),
);
}
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
RaisedButton(
child: Text('animate forward'),
onPressed: () {_controller.forward();},
),
RaisedButton(
child: Text('animate reverse'),
onPressed: () {_controller.reverse();},
),
const SizedBox(height: 100.0,),
SizeTransition(
child: Container(
width: 200.0,
height: 200.0,
color: Colors.blue,
),
sizeFactor: CurvedAnimation(
curve: Curves.fastOutSlowIn,
parent: _controller,
),
),
],
);
}
}
例如,以下代码不适用于SizeTransition
,但适用于ScaleTransition
。我不知道SizeTransition
出了什么问题。
return Container(
width: double.infinity,
child: Column(
https://stackoverflow.com/questions/56315392
复制相似问题