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场景。

相关推荐
hai_android3 小时前
把 Android App 打包成系统应用(System App)
android·kotlin·android jetpack
JMchen3 小时前
【Jetpack 内核实战 01】开篇:Jetpack 组件全家桶核心逻辑与专栏完整规划
android·kotlin·android jetpack
骑着蜗牛撵大象3275 小时前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信
hunterandroid5 小时前
Retrofit 网络请求的异常处理与重试策略实战
android
sejinan6 小时前
极致轻量与秒级起播:NativeWasmTv 开源硬核技术解析与升级版体验
android·开源·webview·tv
小羊没烦恼!6 小时前
Ajax与JSON的一些总结
android·java·前端·数据库·mysql·算法·okhttp
mmsx6 小时前
Android 静默失败实录:五个没有日志的线上事故
android·kotlin
hai_android7 小时前
从零实现一个支持跨进程(IPC)的自定义 Toast
android·kotlin·android jetpack
龙腾-虎跃7 小时前
基于 SIP 协议的自研电话终端:FreeSWITCH 语音与视频通信实战
android·音视频·freeswitch·sip协议终端·wertc
imDwAaY7 小时前
操作系统如何管理程序运行?从线程、进程到内存隔离与用户态切换:CS162 Note2
android·java·redis