Android Fragment 切换

fragment +切换/

切换的原理是隐藏和显示fragment,fragment不需要重新加载。若有数据更新最好加上手动刷新

    mFragments = new Fragment[3];
        //mFragments[0] = new NotificationFragment();// 公告fragment
      //mFragments[0] = new MessageFragment();
        mFragments[0] = new Chattacts_Fragment();// 消息Fragment----替换为--群组联系人列表
        mFragments[1] = new MapsFragment();// GisFragment
        mFragments[2] = new ManuscriptFragment();// 建稿fragment---替换为--通话记录列表
    //  mFragments[4] = new SettingFragment();// 设置fragment
/**
     * @param fragment的管理
     */
    public  void changeTag(int index){
        
        currentIndex = index;
        FragmentTransaction ft = fragmentManager.beginTransaction();
        if(null!=mCurrentFrgment){
            ft.hide(mCurrentFrgment);
        }
         //先根据Tag从FragmentTransaction事物获取之前添加的Fragment
        Fragment fragment = getSupportFragmentManager().
                findFragmentByTag(mFragments[currentIndex].getClass().getName());
        if (null == fragment) {
            //如fragment为空,则之前未添加此Fragment。便从集合中取出
            fragment = mFragments[index];
        }
        mCurrentFrgment = fragment;

        //判断此Fragment是否已经添加到FragmentTransaction事物中
        if (!fragment.isAdded()) {
            ft.add(R.id.mapframelayout, fragment, fragment.getClass().getName());
        } else {
            ft.show(fragment);
        }
        ft.commit();
    }

随后整理demo 更新。。。

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 180,697评论 25赞 708
  • 加入简书时间不长,才几个月,从事Android开发的时间也不长,最近在Android开发的项目中遇到了些问题,有些...
    墨白1629阅读 3,447评论 1赞 2
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 16,930评论 4赞 61
  • 没有人告诉过我,很多人一辈子只能遇见一次,擦肩而过就是杳然一生。人海茫茫,遇之是幸,不遇是命。
  • 今年的4月,速度与激情8如约而至,范老大带着他的Familys又一次杀回大银幕。 速8电影刚开始就是街头狂飙,燃爆...
    曹小暖阅读 405评论 1赞 5

友情链接更多精彩内容