在执行时加入碎片
将UI切割为多个可配置的部分是碎片的优势之中的一个,但其真正强大之处在于可在执行时动态地把它们加入到活动中。
1、使用上一篇创建的Fragments项目,在main.xml文件里凝视掉两个<fragment>元素;
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,:
当设备处于横向模式时。显示碎片1: