protected override Widget buildStackActions(BuildContext context, CustomDismissibleDelegateContext ctx) { return(Positioned.fill( new LayoutBuilder(builder: (_context, constraints) => { var totalExtent = ctx.getMaxExtent(constraints) * ctx.state.totalActionsExtent; var animation = new FloatTween(-totalExtent, 0).animate(ctx.state.actionsMoveAnimation); return new AnimatedBuilder( animation: ctx.state.actionsMoveAnimation, builder: (cxt, child) => { var widgets = new List <Widget>(); ctx.buildActions(cxt).ForEach(item => { var widget = new Expanded(child: item); widgets.Add(widget); }); return new Stack( children: new List <Widget> { ctx.createPositioned( position: animation.value, extent: totalExtent, child: new Flex( ctx.state.widget.direction, children: widgets ) ) } ); } ); }) )); }
protected override Widget buildStackActions(BuildContext context, CustomDismissibleDelegateContext ctx) { return(Positioned.fill( new LayoutBuilder(builder: (_context, constraints) => { var widgets = new List <Widget>(); ctx.buildActions(_context).ForEach(item => { var widget = new Expanded(child: item); widgets.Add(widget); }); return new Stack( children: new List <Widget> { ctx.createPositioned( position: 0, extent: ctx.getMaxExtent(constraints) * ctx.state.totalActionsExtent, child: new Flex( ctx.state.widget.direction, children: widgets ) ) } ); }) )); }