<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://www.easck.com/apk/res/android" android:id="@+id/main_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:baselineAligned="false" android:orientation="horizontal" > </LinearLayout>
你会发现我知识去掉了两个Fragment,整个LinearLayout加进去了id
第6个步骤,里面的注释,已经写得很清楚了:
package lgx.fram.framents; import android.os.Bundle; import android.app.Activity; import android.view.Display; import android.view.Menu;
@author lenovo 动态添加Fragment主要分为4步:
(1)获取到FragmentManager,在Activity中可以直接通过getFragmentManager得到。
(2)开启一个事务,通过调用beginTransaction方法开启。
(3)向容器内加入Fragment,一般使用replace方法实现,需要传入容器的id和Fragment的实例。
(4)提交事务,调用commit方法提交。
public class FragmentActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fragment);
Display display = getWindowManager().getDefaultDisplay();
if (display.getWidth() > display.getHeight()) {
Fragment1 fragment1 = new Fragment1();
getFragmentManager().beginTransaction()
.replace(R.id.main_layout, fragment1).commit();
} else {
Fragment2 fragment2 = new Fragment2();
getFragmentManager().beginTransaction()
.replace(R.id.main_layout, fragment2).commit();
}
}
}










