19、Flutter Widget - AnimatedPositioned;

2,084 阅读1分钟

  在Flutter的小部件中,很多有Slider的功能,从Slider本身到DismissibleDraggable

  如果你想实现这种功能,可以使用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);