美文网首页Android开发实战总结
Android Fragment使用和注意事项

Android Fragment使用和注意事项

作者: AKyS佐毅 | 来源:发表于2017-10-13 17:44 被阅读102次
  • Fragment的中文含义是碎片,在之前安卓开发是,用户界面的切换全部使用activity的切换,这就造成了整个应用使用起来速度较慢,而且很占内存,因为activity是重量级的组件,在应用程序内部使用很不方便。

  • 于是出现了Fragment来解决这样的问题。Fragment是一种便捷的、轻量级的、基于activity的组件,所谓基于activity,就是必须有activity作为容器,Fragment才可以生存。

  • 另外,Fragment 可以动态的添加和删除。所以说Fragment是一种非常方便开发的组件 。

生命周期对比图

FullFragmentAndActivityLifeCycle.png

静态使用Fragment

  • 使用步骤:
    • 1:继承fragment 重写onCreateView()回调方法,设置Fragment的布局
    • 2:在Activity中声明Fragment 使用方式和View相同
静态使用Fragment.png 布局.png

动态使用Fragment

原来的Fragment创建方式不变,只不过在Activity中和布局文件中需要调整。

  • 使用步骤:
    • 1:继承fragment 重写onCreateView()回调方法,设置Fragment的布局
    • 2: 创建Fragment的管理器对象
    • 3: 获取Fragment的事务对象并且开启事务
    • 4: 调用事务中相应的动态操作Fragment的方法执行
    • 5: 提交事务
设置占位和依赖关系.png 提交事务.png

FagmentPagerAdapter与FagmentStatePagerAdapter区别

  • FagmentPagerAdapter 适用于页面较少的情况
  • FagmentStatePagerAdapter 适用于页面较多的情况

Fagment的生命周期

Fagment的生命周期.png

Fragment通信

  • 在Fragment 中调用Activity中的方法 getActivity
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_blank,null);
        RelativeLayout layout = (RelativeLayout) view.findViewById(R.id.tv_navigation);
        layout.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(getActivity(),"点我干嘛",Toast.LENGTH_LONG).show();
            }
        }); 
        return view;
    }
  • 在Activity中调用Fragment 中的方法,接口回调

  • 在Fragment中调用Fragment中的方法 findFragmentById

  • Fragment的replace、 add 、 remove 方法

相关文章

网友评论

    本文标题:Android Fragment使用和注意事项

    本文链接:https://www.haomeiwen.com/subject/qkwzyxtx.html