如何重用有状态的小部件?

时间:2019-09-30 14:51:09

标签: flutter

我正在尝试制作一个简单的页面滑块。

这是页面的外观:page,这是过渡的外观:transition

我在initState的{​​{1}}中设置了随机颜色。

page widget

初始Widget _buildPages() { switch (_transitionType) { case TransitionType.none: return _currentPage; case TransitionType.sliding: return Stack( children: [ AbsorbPointer( absorbing: _slideAnimationController.isAnimating, child: _currentPage, ), AbsorbPointer( absorbing: _slideAnimationController.isAnimating, child: SlideTransition( position: _slideAnimation, child: _nextPage, ), ), ], ); } } _transitionType。当我按下none按钮时,它变成next。问题是我无法重用具有其确切状态的sliding小部件(尽管我仅创建一次小部件然后仅在_currentPage中重用它,但总是会调用initState )。

能请你帮我吗?

更新:完整代码:

_buildPages()

1 个答案:

答案 0 :(得分:0)

我不确定我是否关注该问题。但是,您是否尝试将UniqueKey()/ ValueKey()传递给_currentPage小部件?