Przeglądaj źródła

调整Activity封装

Frankensteinly 1 rok temu
rodzic
commit
f53da42f12

+ 1 - 0
.gitignore

@@ -7,6 +7,7 @@
 /.idea/workspace.xml
 /.idea/navEditor.xml
 /.idea/assetWizardSettings.xml
+/.idea/vcs.xml
 .DS_Store
 /build
 /captures

+ 2 - 2
app/src/main/java/com/grkj/iscs/activity/BleActivity.kt

@@ -18,7 +18,7 @@ import com.grkj.iscs.ble.CustomBleIndicateCallback
 import com.grkj.iscs.ble.CustomBleScanCallback
 import com.grkj.iscs.ble.CustomBleWriteCallback
 import com.grkj.iscs.R
-import com.grkj.iscs.base.BaseBindingActivity
+import com.grkj.iscs.base.BaseActivity
 import com.grkj.iscs.databinding.ActivityBleBinding
 import com.grkj.iscs.ble.BleBean
 import com.grkj.iscs.model.Constants.PERMISSION_REQUEST_CODE
@@ -36,7 +36,7 @@ import pub.devrel.easypermissions.AfterPermissionGranted
 import pub.devrel.easypermissions.EasyPermissions
 import java.io.File
 
-class BleActivity : BaseBindingActivity<ActivityBleBinding>() {
+class BleActivity : BaseActivity<ActivityBleBinding>() {
 
     private val FILE_CODE = 1000
     private var fileMac: String? = null

+ 2 - 2
app/src/main/java/com/grkj/iscs/activity/MainActivity.kt

@@ -1,10 +1,10 @@
 package com.grkj.iscs.activity
 
 import android.content.Intent
-import com.grkj.iscs.base.BaseBindingActivity
+import com.grkj.iscs.base.BaseActivity
 import com.grkj.iscs.databinding.ActivityMainBinding
 
-class MainActivity : BaseBindingActivity<ActivityMainBinding>() {
+class MainActivity : BaseActivity<ActivityMainBinding>() {
 
     override val viewBinding: ActivityMainBinding
         get() = ActivityMainBinding.inflate(layoutInflater)

+ 2 - 2
app/src/main/java/com/grkj/iscs/activity/WebSocketActivity.kt

@@ -1,11 +1,11 @@
 package com.grkj.iscs.activity
 
-import com.grkj.iscs.base.BaseBindingActivity
+import com.grkj.iscs.base.BaseActivity
 import com.grkj.iscs.databinding.ActivityWebSocketBinding
 import com.grkj.iscs.util.StompApi
 import com.grkj.iscs.util.log.LogUtil
 
-class WebSocketActivity : BaseBindingActivity<ActivityWebSocketBinding>() {
+class WebSocketActivity : BaseActivity<ActivityWebSocketBinding>() {
 
     override val viewBinding: ActivityWebSocketBinding
         get() = ActivityWebSocketBinding.inflate(layoutInflater)

+ 8 - 7
app/src/main/java/com/grkj/iscs/base/BaseActivity.kt

@@ -3,26 +3,26 @@ package com.grkj.iscs.base
 import android.os.Bundle
 import android.view.View
 import androidx.appcompat.app.AppCompatActivity
+import androidx.viewbinding.ViewBinding
 import com.grkj.iscs.util.ActivityUtils
 import pub.devrel.easypermissions.EasyPermissions
 
 /**
  * 页面基类
  */
-abstract class BaseActivity : AppCompatActivity() {
+abstract class BaseActivity<T : ViewBinding?> : AppCompatActivity() {
+
+    protected var mBinding: T? = null
+    abstract val viewBinding: T
 
     override fun onCreate(savedInstanceState: Bundle?) {
         super.onCreate(savedInstanceState)
-        setContentView(getLayoutView())
+        mBinding = viewBinding
+        setContentView(mBinding!!.root)
         ActivityUtils.addActivity(this)
         initView()
     }
 
-    /**
-     * 页面布局View
-     */
-    abstract fun getLayoutView(): View
-
     /**
      * 控件初始化
      */
@@ -30,6 +30,7 @@ abstract class BaseActivity : AppCompatActivity() {
 
     override fun onDestroy() {
         super.onDestroy()
+        mBinding = null
         ActivityUtils.removeActivity(this)
     }
 

+ 0 - 27
app/src/main/java/com/grkj/iscs/base/BaseBindingActivity.kt

@@ -1,27 +0,0 @@
-package com.grkj.iscs.base
-
-import android.os.Bundle
-import android.view.View
-import androidx.appcompat.app.AppCompatActivity
-import androidx.viewbinding.ViewBinding
-import pub.devrel.easypermissions.EasyPermissions
-
-abstract class BaseBindingActivity<T : ViewBinding?> : BaseActivity() {
-    protected var mBinding: T? = null
-
-    override fun onCreate(savedInstanceState: Bundle?) {
-        mBinding = viewBinding
-        super.onCreate(savedInstanceState)
-    }
-
-    override fun getLayoutView(): View {
-        return mBinding!!.root
-    }
-
-    abstract val viewBinding: T
-
-    override fun onDestroy() {
-        super.onDestroy()
-        mBinding = null
-    }
-}

+ 2 - 2
app/src/main/java/com/grkj/iscs/base/BaseMvpActivity.kt

@@ -6,8 +6,8 @@ import androidx.viewbinding.ViewBinding
 /**
  * MVP基类Activity
  */
-abstract class BaseMvpActivity<V : IView?, T : BasePresenter<V>?, B : ViewBinding> :
-    BaseBindingActivity<B>(), IView {
+abstract class BaseMvpActivity<V : IView?, T : BasePresenter<V>?, B : ViewBinding> : BaseActivity<B>(), IView {
+
     var presenter: T? = null
 
     override fun onCreate(savedInstanceState: Bundle?) {