在原生android开发中,常用FragmentTransaction
来创建导航动画,其中actionBar的位置是固定的(但是actionBar的内容发生了变化),actionBar下面的fragment会执行一个过渡动画(比如滑入滑出)。
简单来说,AppBar
和body执行不同的过渡动画。在颤振中,创建此类动画的最佳实践是什么?
目前我可以想到一个使用导航Scaffold.body
并使用Stream
+StreamBuilder
开始AppBar
重绘的解决方案。类似于以下代码。
Scaffold(
appBar: StreamBuilder<Int>(
stream: Bloc.of(context).currentFragmentId
builder: //Some logic to decide which AppBar is appropriate
),
body: Navigator(
//Navigation between fragments
),
)
但这真的很奇怪。那么有没有最佳实践来做到这一点?请告诉我!