GridView和ActivityGroup实现Tab切换分页功能

GridView 和 ActivityGroup 的组合玩法,在老版本 Android 里还挺常见的,尤其是想做点分页、Tab 切换这类功能的时候。虽然现在都用 Fragment 了,但有时候老项目还得维护,对吧?这套思路主要靠一个主 Activity 撑场,再加上 TabHost 来切 Tab,每个 Tab 下面是个 ActivityGroup,里面再嵌套多个 GridView 子页面。每个 Item 点进去还能跳转,结构清晰,代码也不复杂。

GridView比较适合展示图文内容,比如分类菜单、图标导航这类。设置个Adapter就能把数据塞进去,布局灵活,响应也快。想让它适配各种屏幕宽度,改下numColumns或者写个自适应的BaseAdapter就行。

ActivityGroup是老派玩法,现在其实不推荐用了。不过在老项目或者特定兼容需求下,它确实方便。你可以用LocalActivityManager去切换子 Activity,还能通过Intent传数据。每个 Tab 就像一个独立页面,逻辑清晰,也容易分工协作。

整个流程其实不复杂:主 Activity 建个TabHost,每个 Tab 挂个 ActivityGroup;ActivityGroup 里用startActivity加载子页面,子页面就是包含 GridView 的 Activity;点击 GridView Item 后跳转或切换内容就行。

如果你现在在维护老项目,或者想了解下老 Android 的布局方式,这套思路还是蛮值得参考的。不过如果是新项目,建议直接用FragmentViewPager,更灵活,动画也好做,系统兼容也更安心。可以参考下Fragment 和 ViewPager 的滑动分页这篇。

对了,类似 GridView 分页的场景还有挺多可以挖的,比如APK 分页展示,或者优化过的分页控件,有需要也可以看看。

rar 文件大小:62.28KB