Fragment用法

    //1.获得碎片管理器

        FragmentManager manager = getFragmentManager();

        //2.开始事务

        FragmentTransaction tr = manager.beginTransaction();

        //3.构建Fragment对象

        SoundFragment fragment = new SoundFragment();

        
        //4.替换容器中内容 参数1 右边容器的id,参数2 fragment对象

        tr.replace(R.id.container, fragment);

        //5.提交事务

        tr.commit();

FragmentTransaction的用法

主要的操作都是FragmentTransaction的方法
FragmentTransaction transaction = fm.benginTransatcion();//开启一个事务
transaction.add() 
往Activity中添加一个Fragment
transaction.remove() 
从Activity中移除一个Fragment,如果被移除的Fragment没有添加到回退栈(回退栈后面会详细说),这个Fragment实例将会被销毁。
transaction.replace()
使用另一个Fragment替换当前的,实际上就是remove()然后add()的合体~
transaction.hide()
隐藏当前的Fragment,仅仅是设为不可见,并不会销毁
transaction.show()
显示之前隐藏的Fragment
detach()
会将view从UI中移除,和remove()不同,此时fragment的状态依然由FragmentManager维护。
attach()
重建view视图,附加到UI上并显示。
transatcion.commit()//提交一个事务

Fragment生命周期


image.png

Fragment调用Activity或传递参数
方法1:调用Fragment的getActivity()方法即可返回它所在的Activity实例,之后就可调用Activity中的方法或者成员变量

 MainActivity activity = (MainActivity) getActivity();
        activity.show("");

你可能感兴趣的:(Fragment用法)