android 之懒人MVP使用

作者: 石头_起航 | 来源:发表于2018-06-14 14:57 被阅读135次

    MVP具体是个什么玩意就自己百度吧,我也不提了,今天主要是告诉你怎么简单快速的使用MVP模式。废话不多说下边开始(我的AS3.0.1)
    首先下载插件流程是 右上角File-------->Settings--------->Plugins(插件)

    1.png
    因为我安装过了所以是这么样子,就是在上边搜索,如果你没安装过这样搜出来是这样子的
    2.png
    然后点击蓝色字体搜索,再然后就是输入MVPPlugin进行搜索,安装完之后需要重启才能生效;
    下边是用法:
    第一步:你新建activity 或者其他Java文件的时候你会发现最下边出现了一个MvpFiles 前面是文件夹的标志,在Java文件下选择这个然后你需要输入mvp 这个样子的
    mvp.png
    这样子你就会发现Java文件下生成了一个名为mvp的文件夹
    第二步:同样右键还是选择MvpFiles ,然后输入名字就和之前不能一样的如果就创建是activity 名字就得是这样子 ******Activity(例如 LoginActivity) 如果是Fragment 就是 ******Fragment (例如 HomeFragment)
    第三步:创建完这些之后你如果直接运行就会报错的,原因 activity没有注册,所以你需要去AndroidManifest.xml 里面注册一下 ,然后就是你去layout会发现没有相应的布局,那么怎么办就去创建呗,然后在activity 绑定一下哦方法很多 可以使用butterknife来绑定
    第四步:文件介绍 ******Activity ******Contract *******Presenter
    生成是这三个东西,第一个activity 大家都知道 ;******Contract 是来把Activity 和 Presenter联系起来的桥梁喽,然后 Presenter 就是你进行网络请求的地方了
    比如我在******Contract这样写的 你看看
    interface View extends BaseView {
        void get(String s);//activity实现  从Presenter里面获取网络请求的数据通过她传到activity
    }
    interface  Presenter extends BasePresenter<View> {
        void set(String sd);//Presenter实现  主要是从activity得到命令什么时候发送网络请求,以及拿到参数
    }
    

    当然你须在activity 和 Presenter实现一下 下边是activity 部分代码

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_maisd);
        mPresenter.set("sdsdsdsd");//告诉 Presenter需要进行请求了  “sdsdsdsd”相当于请求参数
    }
    @Override
    public void get(String s) {//获取从Presenter过来的数据 主要是网络请求
    }
    

    下面是Presenter 部分代码

    @Override
    public void set(String sd) {//这个是从activity中获取命令
        mView.get(sd);//发送数据到activity中
    }
    

    我就写了一个 也没有进行网络请求, 意思就是, 在set方法里面拿到了请求参数 , 并且开始进行网络请求, 然后把数据传回activity ,我sd从activity传通过set 传过来的 然后通过 get传回activity 证明一下数据传递的流程 可以打 log 记录一下 。用插件应该是最简单使用MVP模式了吧;

    相关文章

      网友评论

        本文标题:android 之懒人MVP使用

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