设计模式之工厂模式(Factory)在Android中的应用

来源:互联网 发布:金蝶软件营销服务中心 编辑:程序博客网 时间:2024/06/01 09:14

1.工厂模式也是我们最常见的一种模式了,可以用来创建多个不同的实例对象。Android代码中最常见的应该是对Fragment的集中管理了。用Fragment工厂,创建出不同的fragment。

2.eg: 现在的app大多数都是由少数几个activity和众多的fragment组成,那么针对这些fragment,我们可以开辟一个工厂,针对不同的需求生产不同的fragment,请参考如下代码:

public class FragmentFactory {    //将已经new 出来的fragment储存起来    private static HashMap<Integer, BaseFragment> fragmentMap = new HashMap<Integer, BaseFragment>();    public static BaseFragment createFragment(int position){        //从集合中取,没有的话再newfragment        BaseFragment fragment = fragmentMap.get(position);        if(fragment==null){            switch (position) {            case 0:                fragment = new HomeFragment();                break;            case 1:                fragment = new AppFragment();                break;            case 2:                fragment = new GameFragment();                break;            case 3:                fragment = new SubjectFragment();                break;            case 4:                fragment = new RecommendFragment();                break;            case 5:                fragment = new CategoryFragment();                break;            case 6:                fragment = new HotFragment();                break;            default:                break;            }            fragmentMap.put(position, fragment);        }        return fragment;    }}
0 0