2021.4.6
Scene 的现状是目前的 API 已经满足了产品的需求,开发者本身有其他忙碌的工作,所以迭代的很慢。不过这个库能做的当然还有很多,把目前完成的,开发的,计划的列一下:
已经完成的
1,拆分 com.bytedance.scene:scene,抽出单独的 com.bytedance.scene:scene-navigation,单独拆出来导航库单独方便后续迭代
2,NavigationScene 完善透明 Scene 和不透明 Scene 之间的切换,主要用于动画,适用于本身不透明的页面,在动画过程中先透明,动画后切回不透明的场景
正在开发中的
1,现有 Activity + Fragment 设计的 App,在加入 Scene 后如何处理首页被覆盖的 Fragment 等其生命周期的兼容方案
2,优化 NavigationScene push 的 API,想加入类似官方 Navigation component 的 navOptions DSL 这种
findNavController().navigate(
R.id.action_fragmentOne_to_fragmentTwo,
null,
navOptions { // Use the Kotlin DSL for building NavOptions
anim {
enter = android.R.animator.fade_in
exit = android.R.animator.fade_out
}
}
)
navigationScene?.push(TargetScene(),
pushOptions {
anim {
enter = android.R.animator.fade_in
exit = android.R.animator.fade_out
}
}
)
还需要完善的
1,Scene Router,https://github.com/bytedance/scene/tree/scene_router 支持 Url 跳转,用于组件化解耦
2,Scene Dialog,https://github.com/bytedance/scene/tree/master/library/scene_dialog 解决普通 Dialog 会盖在所有 View 上面,所以封装了一套 Scene Dialog
3,Safe Argument,还没做,用注解来解决 Bundle 类型不安全
2021.4.6
Scene 的现状是目前的 API 已经满足了产品的需求,开发者本身有其他忙碌的工作,所以迭代的很慢。不过这个库能做的当然还有很多,把目前完成的,开发的,计划的列一下:
已经完成的
1,拆分 com.bytedance.scene:scene,抽出单独的 com.bytedance.scene:scene-navigation,单独拆出来导航库单独方便后续迭代
2,NavigationScene 完善透明 Scene 和不透明 Scene 之间的切换,主要用于动画,适用于本身不透明的页面,在动画过程中先透明,动画后切回不透明的场景
正在开发中的
1,现有 Activity + Fragment 设计的 App,在加入 Scene 后如何处理首页被覆盖的 Fragment 等其生命周期的兼容方案
2,优化 NavigationScene push 的 API,想加入类似官方 Navigation component 的 navOptions DSL 这种
还需要完善的
1,Scene Router,https://github.com/bytedance/scene/tree/scene_router 支持 Url 跳转,用于组件化解耦
2,Scene Dialog,https://github.com/bytedance/scene/tree/master/library/scene_dialog 解决普通 Dialog 会盖在所有 View 上面,所以封装了一套 Scene Dialog
3,Safe Argument,还没做,用注解来解决 Bundle 类型不安全