Fragment动态添加碎片

当然,第一步是要创建要添加的碎片布局的,这里就省略了,待添加的布局对应类为:AnotherFragment。
首先将右侧碎片放在一个FrameLayout(最简单的一种布局,没有任何定位方式,所有控件都摆放在布局左上角)中

<FrameLayout
        android:id="@+id/right_layout"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        >
        <fragment
            android:id="@+id/right_fragment"
            android:layout_gravity="center"
            android:name="com.commy.u4_fragmentreview.RightFragment"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />

    FrameLayout>

java代码:

button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//                创建待添加的碎片实例
                AnotherRightFragment fragment = new AnotherRightFragment();
//                获取FragmentManager
                FragmentManager fragmentManager = getFragmentManager();
//                开启一个FragmentTransaction事务。
                FragmentTransaction transaction = fragmentManager.beginTransaction();
//                调用事务的replace方法,需要传入容器的id和带传入的碎片实例。
                transaction.replace(R.id.right_layout,fragment);
                transaction.addToBackStack(null);
//                提交事务。
                transaction.commit();
            }
        });

你可能感兴趣的:(Android基础)