MvpAutoCodePlus
Machine translation of English documents
JetBrains IDEA/Android Studio MVP模版代码生成插件
特征
- 根?指?的父接口生成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
-
手动?装:
- 下载
最新发布的插件包> File >Preferences(Settings) > Plugins > Install plugin from disk...
- 下载
重启IDE.
使用
-
配?父接口:
- File > Preferences(Settings) > Other Settings > MvpAutoCodePlus >
基于
这一套Java接口的配?示例:项?内的Class已经在V1.0beta2支持选择,但是如果有泛型限?的话,泛型还是需要手动添加,比如选择的类签名为:com.longforus.base.java.BasePresenterJv<V extends IView,M extends IModel>
需要手动添加后面的泛型限?<V,M>:
现在还支持全局和当前项?模式,全局模式中配?的接口可在所有项?中使用,当前项?中配?的接口只在当前项?中起效,方便有多个不相同工程时的无缝切换.
-
生成:
-
右击要生成的?标包,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,稍等一会儿,代码就生成了,生成的包结构如下:
-
关于父接口
只使用了我自己?前使用的接口来开发测试,欢迎各位使用自己的接口进行测试.如需要我使用的接口 ,请下载后放入自己的项?中.
存在?题
- 父接口和父类如果有泛型限?在选择后还需要手动输入泛型,好在只用??一次就可保存了,项?中也不会经常变动.
- 还没有研究生成View对应的布局文件,要是也能生成默?的,会更方便一些.
- 其他未知?题,此插件是作者首次开发插件,?全从0开始,?方的文档不是很详细,英语水平更是不堪,国内的参考资料也不多,做这个纯粹是忽然想到了,就开始做了.难免有未尽之处,欢迎各位star,issue.
鸿洋公众号插件广告文 ,感谢大神给予机会.插件的开发,推荐大?查看鸿洋的开发教程,要是插件不符合你的要求.可以issue,也可以fork自行?改.感谢你的关注.







