美文网首页
Android Fragment 切换

Android Fragment 切换

作者: 小夏夏_run | 来源:发表于2016-08-29 18:06 被阅读0次

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 更新。。。

相关文章

网友评论

      本文标题:Android Fragment 切换

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