Android 开发新手,经典底部 Tab 切换 2022 最佳实践是用 viewpager2 还是 Navigation...
source link: https://www.v2ex.com/t/840085
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Android 开发新手,经典底部 Tab 切换 2022 最佳实践是用 viewpager2 还是 Navigation 组件?
wuhaoworld · 22 小时 15 分钟前 · 1100 次点击用官方文档的 Navigation 组件 有个明显的问题,Fragment 不会自动缓存,如果 Fragment 里有网络请求,有列表,切换后会自动销毁,无法保留状态,这是最基本的需求了吧?搜了一下,似乎讨论的不多,解决方案小白看着太难懂
Viewpager2 则自动缓存,但感觉 Viewpager2 正经不是干这个的
所以 2022 实现经典底部 Tab 切换,最佳实践是什么? 如果是 Navigation ,如何解决缓存的问题呢
ikas 21 小时 1 分钟前 1
但是这会产生各种额外问题,我自己的 app 使用这种方案,做了很多修改..始终不完善..
实际 Fragment 中应该仅仅是 ui 与一些事件转发方法,你的逻辑与数据应该在 ViewModel 中,这样即使重建 Fragment 消耗也没有那么大,官方也是这样推荐的
Viewpager2 采用 RecyclerView 与 Fragment 来实现,不太适合做页面根框架,否则后续你的各种页面都要自己处理
liveoppo 20 小时 55 分钟前
john6lq 20 小时 55 分钟前
按照开发规范,Activity 、Fragment 只能显示 UI ,持久化、网络请求移到 ViewModel 中。
ViewPager2 、Navigation 对 Fragment 生命周期的影响这个需要自己动手实践下。
james2013 20 小时 5 分钟前 via Android
wobuhuicode 11 小时 7 分钟前
yawenimy122 11 小时 2 分钟前
nicevar 9 小时 44 分钟前
secretman 8 小时 57 分钟前
lisongeee 8 小时 56 分钟前
chrisia 8 小时 18 分钟前
debuggeeker 5 小时 51 分钟前
kldd529 3 小时 5 分钟前
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK