在Flutter的小部件中,很多有Slider的功能,从Slider本身到Dismissible和Draggable。
如果你想实现这种功能,可以使用AnimatedPositioned;
bool showMessage = false;
Stack(
children:[
Positioned(
bottom:10,
right:10,
child:MessageWidget(widget.message),
),
AnimatedPositioned(
duration:Duration(milliseconds:500),
bottom:showMessage?70:10,
right:10,
child:BloackerWidget(),
),
],
)
不同之处在于,如果使用不同方向的宽度、高度重建AnimatedPositioned;将会自动更改
setState(()=>showMessage=true);