Android主界面多Tab实现方式

主要有四种实现方式
(1)FragmentManager+Fragment实现

封装最少, 需要自己通过FragmentManager管理Fragment的显示和隐藏,缺点事不支持滑动切换Tab。

(2)ViewPager+ViewPagerAdapter实现

支持滑动切换Tab,页面不必是Fragment, 直接使用普通的自定义View即可。优点类似RecyclerView。

(3)ViewPager+FragmentPagerAdapter实现

每个页面都各自继承Framement, 可以方便的在onCreateView实现比较复杂的页面逻辑,并且页面逻辑与主界面逻辑分离。

(4)TabPageIndicator+ViewPager+FragmentPagerAdapter

实现方式和(3)是一致,但是使用了TabPageIndicator作为tab的指示器,可以实现更丰富的效果,同时也适用于顶部多Tab场景。

相关推荐
又见情义32 分钟前
RK3568 Android 13 屏蔽 healthd 电池日志经验分享
android
古法安卓4 小时前
Android-Fork 机制详解
android·java·android studio
Android打工仔4 小时前
不要在 Data 层随意把 Cold Flow 转换成 Hot Flow
android·架构·kotlin
峥嵘life5 小时前
2026免费的 opencode 使用分享:Windows端 + 服务器CLI 实战总结
android·大数据·开发语言
杉氧5 小时前
拒绝重复造轮子:我写了一个生产级的 Kotlin 协程与 Flow 工具库(CoroutineKit)
android·kotlin·workflow
恋猫de小郭6 小时前
Flutter GSoC 2026 提案进度解读,补上 DevTools、FFI 和原生平台的关键缺口
android·前端·flutter
2501_915909066 小时前
怎么用 FlutterFlow 把应用发布到 App Store?
android·ios·小程序·https·uni-app·iphone·webview
峥嵘life6 小时前
2026华为AI码道 CodeArts 使用分享:Windows端 + 服务器CLI 实战总结
android·大数据·开发语言·python
yxlalm6 小时前
对话记忆持久化-Redis热与MySQL冷
android·redis·mysql