带视图寻呼机的Android MVP

带视图寻呼机的Android MVP,第1张

概述我想在我的 android项目中实现MVP.但是当我使用viewPagerAdapter实现MVP时,我遇到了困难.为了实现MVP,我们习惯在Activity类中创建片段/视图和演示者实例.片段/视图和演示者都将使用契约相互通信.通过这种方式,我们将视图与演示者分离,并使用单元测试覆盖所有业务逻辑.但是,如果我们有内部活动的tablayout.我们在fragmentPagerAdapter中启动了 我想在我的 android项目中实现MVP.但是当我使用vIEwPagerAdapter实现MVP时,我遇到了困难.为了实现MVP,我们习惯在Activity类中创建片段/视图和演示者实例.片段/视图和演示者都将使用契约相互通信.通过这种方式,我们将视图与演示者分离,并使用单元测试覆盖所有业务逻辑.但是,如果我们有内部活动的tablayout.我们在fragmentPagerAdapter中启动了片段.我不确定,如何为其相应的演示者提供制表符片段/视图引用.如果我在fragmentPagerAdapter中初始化presenter,它将漂白SRP(单一责任主体).如果我们在Fragment中创建将生成耦合代码的presenter实例,那么我们就不需要联系来建立片段和演示者之间的通信.请提供架构解决方案,以便我可以使用视图寻呼机实现相同的MVP,同时遵守所有干净的代码主体.

作为参考,请在下面找到我的适配器代码,我正在为选项卡初始化片段:

@OverrIDe    public Fragment getItem(int position) {        switch (position) {            case 0:                return getConfigurationsTabFragment();            case 1:                return UpdateTabFragment.newInstance();            case 2:                return ServiceTabFragment.newInstance();            default:                return null;        }    }
解决方法
private class MyAdapter extends FragmentPagerAdapter {        private final List<Fragment> mFragmentList = new ArrayList<>();        public MyAdapter(FragmentManager fm) {            super(fm);        }        @OverrIDe        public Fragment getItem(int position) {            return mFragmentList.get(position);        }        @OverrIDe        public int getCount() {            return mFragmentList.size();        }        public voID addFragement(Fragment fragment){            mFragmentList.add(fragment);        }    }

在活动中使用它:

MyAdapter adapter = new MyAdapter(getChildFragmentManager());    Fragment fragment1 = EmptyFragment.newInstance("this is page 1");    Fragment fragment2 = EmptyFragment.newInstance("this is page 2");    presenter1.setxxx(fragment1);    presenter2.setxxx(fragment2);    adapter.addFragement(fragment1);    adapter.addFragement(fragment2);    vIEwPager.setAdapter(adapter);
总结

以上是内存溢出为你收集整理的带视图寻呼机的Android MVP全部内容,希望文章能够帮你解决带视图寻呼机的Android MVP所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1126171.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存