Android Activity嵌套Fragment横竖屏切换实现

Android 里 Activity 嵌套 Fragment 的横竖屏切换实现,确实挺常用也容易踩坑。我之前折腾 Tab 切换时就用到了 ViewPager 加多个 Fragment,滑动流畅,页面也清晰。

布局里的FrameLayout是个万能容器,用来装 Fragment 再合适不过了。你只需要在ActivityonCreate()里用FragmentManager加点逻辑,Fragment 就能灵活切换。

ViewPager的加入,让左右滑动切 Fragment 更丝滑。记得用FragmentStatePagerAdapter,这个比较省内存,页面多了也不怕。适配器里要重写getItem()getCount(),简单明了。

说到横竖屏切换,最关键的还是避免 Activity 重建。你可以直接在AndroidManifest.xml里加上android:configChanges="orientation|screenSize",再重写onConfigurationChanged()就能搞定了。布局适配也不难,搞两个布局文件,一个放res/layout,另一个放res/layout-land就行。

如果你还在为横竖屏切换搞得焦头烂额,强烈建议你看下这个方案。搭配下面这些文章一起看,理解更到位:

如果你要做 Tab 布局、内容切换或者复杂页面结构,Activity+Fragment+ViewPager 的组合真是太合适了。再顺手搞定横竖屏切换,体验就到位了~

zip 文件大小:2.36MB