Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

MvpAutoCodePlus

Downloads

Machine translation of English documents

JetBrains IDEA/Android Studio MVP模版代码生成插件

screenshots

特征

  • 根�?指�?�的父接口生成MVP Contract接口类.
  • 可选的根�?生成的MVP Contract和指�?�的父类生成MVP�?�现类,并添加抽象方法默�?��?�现.
    • 支持Activity
    • 支持Fragment
    • 支持Presenter
    • 支持Model
  • 支持Java和Kotlin语言

支持的 IDE:

  • Android Studio(从3.1(173.3727—173.* )开始支持)
  • IntelliJ IDEA
  • IntelliJ IDEA Community Edition

�?�装

  • 使用 IDE 内�?插件系统�?�装:

    • File > Preferences(Settings) > Plugins > Browse repositories... > 搜索并找到"MvpAutoCodePlus" > Install Plugin

    install

  • 手动�?�装:

重启IDE.

使用

  1. 配�?父接口:

    • File > Preferences(Settings) > Other Settings > MvpAutoCodePlus >

    settings

    基于这一套Java接口的配�?示例:

    settings1

    项�?内的Class已经在V1.0beta2支持选择,但是如果有泛型限�?�的话,泛型还是需要手动添加,比如选择的类签名为:com.longforus.base.java.BasePresenterJv<V extends IView,M extends IModel>

    use3

    需要手动添加后面的泛型限�?�<V,M>:

    use4

    现在还支持全局和当前项�?模式,全局模式中配�?的接口可在所有项�?中使用,当前项�?中配�?的接口只在当前项�?中起效,方便有多个不相同工程时的无缝切换.

  2. 生成:

    use1

    • 右击要生成的�?标包,New > Generate Mvp Code (或选中包,按Alt+Insert),生成contract包后可以选中contract包或contract的父包.

    • 输入生成的代码主名,比如要做Login功能,就输入Login,生成结果是ILoginContract,LoginActivity,LoginPresenter,LoginModel

    • 从1.4开始如果P的超接口以ViewModel结尾,那么生成的结果是ILoginContract,LoginActivity,LoginViewModel,LoginModel

    • 选择代码�?�现方式,可选Java或Kotlin

    • 选择View的�?�现方式,Activity或Fragment,如果配�?了多个的话,可选择其中之一,不想生成的项去掉前面的复选框.如果没有输入P和M�?�现类的超类,那么生成的P和M的�?�现类只会�?�现对应的接口.

    • 从1.1开始支持不生成Model接口和对应的�?�现类,更加灵活.

    • 点击Ok,稍等一会儿,代码就生成了,生成的包结构如下:

      use2

关于父接口

只使用了我自己�?前使用的接口来开发测试,欢迎各位使用自己的接口进行测试.如需要我使用的接口 ,请下载后放入自己的项�?中.

存在�?题

  • 父接口和父类如果有泛型限�?�在选择后还需要手动输入泛型,好在只用�?��?一次就可保存了,项�?中也不会经常变动.
  • 还没有研究生成View对应的布局文件,要是也能生成默�?�的,会更方便一些.
  • 其他未知�?题,此插件是作者首次开发插件,�?�全从0开始,�?�方的文档不是很详细,英语水平更是不堪,国内的参考资料也不多,做这个纯粹是忽然想到了,就开始做了.难免有未尽之处,欢迎各位star,issue.

�?�整的更新历史�?�录

鸿洋公众号插件广告文 ,感谢大神给予机会.插件的开发,推荐大�?�查看鸿洋的开发教程,要是插件不符合你的要求.可以issue,也可以fork自行�?改.感谢你的关注.

You can’t perform that action at this time.