(十四)——在运行时添加碎片(附源码)
最后更新于:2022-04-01 20:17:00
**在运行时添加碎片**
**[点击获取源码](http://download.csdn.net/detail/u012904198/7336767)**
将UI分割为多个可配置的部分是碎片的优势之一,但其真正强大之处在于可在运行时动态地把它们添加到活动中。
1、使用上一篇创建的Fragments项目,在main.xml文件中注释掉两个元素;
2、在FragmentActivity.java中添加下面的代码:
~~~
FragmentManager fragmentManager = getSupportFragmentManager();//向活动添加碎片
FragmentTransaction fragmentTransaction = fragmentManager
.beginTransaction();//添加FragmentTransaction来操作碎片
//获取设备当前的屏幕信息:判断处于纵向模式还是横向模式
WindowManager windowManager = getWindowManager();
Display display = windowManager.getDefaultDisplay();
if (display.getWidth() > display.getHeight()) {
//横向模式
Fragment1 fragment1 = new Fragment1();
fragmentTransaction.replace(android.R.id.content, fragment1);
} else {
//纵向模式
Fragment2 fragment2 = new Fragment2();
fragmentTransaction.replace(android.R.id.content, fragment2);
}
fragmentTransaction.commit();提交更改
~~~
3、在模拟器上运行程序,效果如下:
当设备处于纵向模式时,显示碎片2,:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-08-23_57bc06b86a21b.jpg)
当设备处于横向模式时,显示碎片1:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-08-23_57bc06b89d291.jpg)
';