Android MVP代码生成插件MVPHelper使用教程

MVPHelper Github 地址
https://github.com/githubwing/MVPHelper

Demo Github 地址
https://github.com/anymyna/ui

使用步骤:
1、安装MVPHelper插件

MVPHelper是一款适用于 Intellij IDEA 和 Android Studio 的插件, 可用于为 MVP 架构生成接口以及实现类。在 Android Studio 中Setting 窗口的 Plugins选项搜索 MVPHelper 进行安装或者MVPHelper github网站中下载插到件本地,进行本地安装

2、使用MVPHelper新建MVP代码
在 Contract 类或者 Presenter 类内部,点击 Generate 菜单或使用快捷键 Alt + Insert, 选择 Mvp Helper 即可生成对应文件.

如新建一个presenter 空文件夹,然后创建一个TestPresenter 的类,在类中快捷键 Alt + Insert, 选择 Mvp Helper ,使用MVPHelper 插件生成接口以及实现类。

在这里插入图片描述

3、增加简单的演示代码

public class MainActivity extends AppCompatActivity implements TestContract.View, View.OnClickListener {

    private TestPresenter testPresenter;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        findViewById(R.id.text).setOnClickListener(this);
        testPresenter=new TestPresenter(this);
    }

    @Override
    public void onClick(View view) {
        testPresenter.jump();
    }


    @Override
    public void onFail(String msg) {
        Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onSuccess() {
        Toast.makeText(this, "onSuccess", Toast.LENGTH_SHORT).show();
    }

    @Override
    public String getName() {
        Toast.makeText(this, "getName", Toast.LENGTH_SHORT).show();
        return "name";
    }
}



public class TestPresenter implements TestContract.Presenter {
    private TestContract.View view;
    private TestModel testModel;

    public TestPresenter(TestContract.View view) {
        this.view = view;
        testModel=new TestModel();
    }

    @Override
    public void onFail(String msg) {
        view.onFail(msg);
    }


    @Override
    public void onSuccess() {
        view.onSuccess();
    }


    public void jump(){

        testModel.jump("empty",this);
        //testModel.jump("test",this);
    }
}
public class TestModel implements TestContract.Model {


    @Override
    public void jump(String name, TestPresenter testPresenter) {
        if (name.equals("empty")){
            testPresenter.onFail("Empty");
        }else{
            testPresenter.onSuccess();
        }
    }
}

```java
public interface TestContract {
    interface Model {
        void jump(String name,TestPresenter testPresenter);
    }


    interface View {

        void onFail(String msg);

        void onSuccess();

        String getName();

    }


    interface Presenter {
        void onSuccess();
        void onFail(String msg);
    }
}
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值