Fragment交互
1 新建一个项目
2 创建两个Fragment
![](https://img.haomeiwen.com/i18662890/ec13fb41bccde3f7.png)
![](https://img.haomeiwen.com/i18662890/5556ca7b164f48c0.png)
3 在Activity中使用两个Fragment
![](https://img.haomeiwen.com/i18662890/a9a9f219c98bede9.png)
2 创建一个桥梁连接两个fragment,我们先把activity传递给第一个Fragment
![](https://img.haomeiwen.com/i18662890/b4f8afc4583f346f.png)
3 为按钮设置点击事件
![](https://img.haomeiwen.com/i18662890/3a05dd3891d02690.png)
4 在第二个fragment内部公开一个方法
![](https://img.haomeiwen.com/i18662890/e3f3ca6e50e2b790.png)
5 在activity内部通知第二个fragment
![](https://img.haomeiwen.com/i18662890/22fb39d66440035f.png)
6 功能完成后为了考虑到使用方便,我们开始来解耦,首先建立一个接口
![](https://img.haomeiwen.com/i18662890/68a7905b08b52371.png)
7 Activity实现了接口,第一个fragment解耦Activity
![](https://img.haomeiwen.com/i18662890/88c0b41b1f289090.png)
8 处理横竖屏可能会出现数据丢失,在第一个Fragment中处理onSaveInstance
![](https://img.haomeiwen.com/i18662890/c307f24ed268ee79.png)
9 在第二个Fragment中处理onSaveInstance
![](https://img.haomeiwen.com/i18662890/b2a01a227230c834.png)
横竖屏切换
1 新建一个activity
2为这个activity新建布局
3 创建一个同名的横屏的布局
![](https://img.haomeiwen.com/i18662890/cbc51420ffafa2e4.png)
![](https://img.haomeiwen.com/i18662890/e93567d76003f62a.png)
4 创建一个列表fragment
![](https://img.haomeiwen.com/i18662890/34198698f165c2fb.png)
5 列表fragment编写一个Adaoter填充数据
![](https://img.haomeiwen.com/i18662890/b3e4418c41560ac5.png)
6 创建一个接口进行交互
![](https://img.haomeiwen.com/i18662890/28e2dce5f099bd5e.png)
7 activity实现这个接口
![](https://img.haomeiwen.com/i18662890/910b7df7eb4f2326.png)
8 列表fragment绑定这个activity
![](https://img.haomeiwen.com/i18662890/e6e2e0fb5e02bae2.png)
9 新建一个内容页面的Fragment
![](https://img.haomeiwen.com/i18662890/a6ae130a3da853a0.png)
10 分别编写横屏和竖屏的activity布局
横屏 (1个Fragment)
![](https://img.haomeiwen.com/i18662890/48ae2b12f8c78bf3.png)
竖屏(两个Fragment)
![](https://img.haomeiwen.com/i18662890/45666e7f5ddfd2a1.png)
11 处理Activity点击事件,分为横竖屏不同的处理方式
![](https://img.haomeiwen.com/i18662890/f46824c2bc218169.png)
12 编写竖屏显示内容activity
![](https://img.haomeiwen.com/i18662890/82b7808eaf3b6a35.png)
Fragment切换
1 新建一个Activity
2 编写activit布局
![](https://img.haomeiwen.com/i18662890/bd8b593e75a019f5.png)
3 先把第一个显示的Fragment添加到activity
![](https://img.haomeiwen.com/i18662890/8be4a320867fd163.png)
4 处理两个按钮的点击事件
![](https://img.haomeiwen.com/i18662890/046d537d352a7e9f.png)
网友评论