[英]How can use AnimatedSize child of AnimatedPositioned in flutter?
我想在 AnimatedPositioned 的孩子中使用 AnimatedSize,但我得到了例外。
这是我的代码:
AnimatedPositioned(
duration: Duration(seconds: 2),
curve: Curves.fastLinearToSlowEaseIn,
top: isProfileSelected ? 100 : 0,
child: Transform.translate(
offset:
Offset(isProfileSelected ? MediaQuery.of(context).size.width / 2 - 53 :MediaQuery.of(context).size.width / 2 - 38, 90 / 2),
child: AnimatedSize(
curve: Curves.fastOutSlowIn,
child: isProfileSelected ? SizedBox(
width: 106.0,
child: circleAvatar(106, 106),
) : SizedBox(
width: 76.0,
child: circleAvatar(76, 76),
),
),
),
),
将此添加到您的班级状态
class _MyWidgetState extends State<_MyWidget> with SingleTickerProviderStateMixin {
.............
AnimatedPositioned(
duration: Duration(seconds: 2),
curve: Curves.fastLinearToSlowEaseIn,
top: isProfileSelected ? 100 : 0,
child: Transform.translate(
offset:
Offset(isProfileSelected ? MediaQuery.of(context).size.width / 2 - 53 :MediaQuery.of(context).size.width / 2 - 38, 90 / 2),
child: AnimatedSize(
vsync: this, //This must be required
duration: Duration(milliseconds: 200), //Duration is also required
curve: Curves.fastOutSlowIn,
child: isProfileSelected ? SizedBox(
width: 106.0,
child: circleAvatar(106, 106),
) : SizedBox(
width: 76.0,
child: circleAvatar(76, 76),
),
),
),
),
......................
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.