FragmentFactory

import android.support.v4.app.Fragment;
import java.util.HashMap;
public class FragmentFactory {
    private static HashMap<Integer, Fragment> savedFragment = new HashMap<Integer, Fragment>();

    public static Fragment getFragment(int position) {
        Fragment fragment = savedFragment.get(position);
        if (fragment == null) {
            switch (position) {
                case 0:
                    fragment = new Fragment01();
                    break;
                case 1:
                    fragment = new Fragment02();
                    break;
                case 2:
                    fragment = new Fragment03();
                    break;
                case 3:
                    fragment = new Fragment04();
                    break;

            }
            savedFragment.put(position, fragment);
        }

        return fragment;
    }

}
时间: 2024-10-01 20:41:28

FragmentFactory的相关文章

android 应用架构随笔五(ActionBar与侧滑菜单DrawerLayout)

ActionBar(V7)的添加非常简单,只需要在AndroidManifest.xml中指定Application或Activity的theme是Theme.Holo或其子类就可以了,在Android 3.0及更高的版本中,Activity中都默认包含有ActionBar组件. drawerLayout(V4)是Support Library包中实现了侧滑菜单效果的控件,可以说drawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物.drawer

【重大bug】viewpager使用的时候加载数据应该在setOnPageChangeListener里加载

[重大bug]viewpager使用的时候加载数据应该在setOnPageChangeListener里的onPageSelected里加载,我说怎么首页有数据,第二页就是空白,就是加载了但是数据不显示 1 mPagerTab.setOnPageChangeListener(new OnPageChangeListener() { 2 3 @Override 4 public void onPageSelected(int position) { 5 BaseFragment fragment

day01--思路

LoadingPager抽取 学习笔记 如有错误之处请大家帮忙指出纠正__谢谢 ------------------------------------------------------------------------------------------------------------------------------------------- MainActivity中: 1 界面控件 : 顶部 指针 [ 引入指针控件 ],   底部ViewPager 现在设置FragmentPa

fragment和工厂设计模式结合结合

class MyPagerAdapter extends FragmentPagerAdapter{ private String[] tab_names; public MyPagerAdapter(FragmentManager fm) { super(fm); tab_names = UIUtils.getStringArray(R.array.tab_names); } @Override public Fragment getItem(int arg0) { //获取Fragment对

Android高仿微信表情输入与键盘输入(详细实现分析)

转载请注明出处(请尊重原创!谢谢~): http://blog.csdn.net/javazejian/article/details/52126391 出自[zejian的博客] ??表情与键盘的切换输入大部分IM都会需要到,之前自己实现了一个,还是存在些缺陷,比如说键盘与表情切换时出现跳闪问题,这个困扰了我些时间,不过所幸在Github(其代码整体结构很不错)并且在论坛上找些解决思路,再加上研究了好几个开源项目的代码,最后终于苦逼地整合出比较不错的实现效果(这里不仅给出了实现方案,还提供一个

Vue.js学习 Item13 – 指令系统与自定义指令

基础 除了内置指令,Vue.js 也允许注册自定义指令.自定义指令提供一种机制将数据的变化映射为 DOM 行为. 可以用 Vue.directive(id, definition) 方法注册一个全局自定义指令,它接收两个参数指令 ID 与定义对象.也可以用组件的 directives 选项注册一个局部自定义指令. 钩子函数 定义对象可以提供几个钩子函数(都是可选的): bind:只调用一次,在指令第一次绑定到元素上时调用. update: 在 bind 之后立即以初始值为参数第一次调用,之后每当

2、fragment的使用封装(下)

转载请注明出处:http://blog.csdn.net/q649381130/article/details/51346551 1.写在前面的话 上一篇已经介绍了fragment的使用封装,读者可以点击链接查看fragment的使用封装(上):http://blog.csdn.net/q649381130/article/details/51340544. 本文主要采用其他方式,实现对fragment的添加切换操作.效果图就不上了,跟上篇一样. 2.传统方式 在Activity中我们添加一下常

2.抽取代码(BaseActivity)

1.抽取BaseActivity   管理所有activity 方便退出 public class BaseActivity extends ActionBarActivity { // 管理运行的所有的activity public final static List<BaseActivity> mActivities = new LinkedList<BaseActivity>();//增删快 //使用广播也可以,如果当前Activity想退出可以,sendReceiver /

android 应用架构随笔六(Loading加载页面)

import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import com.heima.googleplay.R; import com.heima.googleplay.manager.ThreadManager; import com.heima.googleplay.utils.UIUtils; import android.content.Context; import an