一行注解完成titleBar设置
项目地址:https://github.com/openVS-liu/AndroidBulletMvp
#基础介绍
##1 添加模板(可选,可以节省创建文件次数,以及节省编写样板代码的时间)
下载项目根目录下temples文件夹中的两个模板文件夹(mvpActiviy、mvpFrament)并保存到Android Studio模块文件夹下。 如果是Mac操作系统则默认为/Applications/Android Studio.app/Contents/plugins/android/lib/templates, Windows系统的话由于差异比较大,就 默认为空了,可以自行配置[Android Studio安装目录]/plugins/android/lib/templates(这里只需要配置一次即可,插件将自动保存该位置)。
##2添加模板并使用模块创建模块所需文件( View Presenter layout)
####自动生成了与模块名称想关联的文件,如红框所示
####自动创建的文件内容
HomeActivity.java
@ViewInit(layoutName = "activity_home", title = "城市列表")
class HomeActivity : MvpActivity<HomePresenter?>() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
}
HomePresenter.java
class HomePresenter : Presenter<HomeActivity>() {
override fun onCreate(@NonNull owner: LifecycleOwner) {
super.onCreate(owner)
}
}
activity_home.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="16dp"
tools:context=".home.HomeActivity">
</androidx.constraintlayout.widget.ConstraintLayout>
##3 默认文件效果
####运行module,效果如下图:
如果因为业务需要,MvpActivity(MvpFragment)或者Presenter不能完全满足需要,需要派生子类。只需要修改相应的配置文件,用派生的子类名字替换掉MvpActivity(MvpFragment)或Presenter即可。