From fb47e3232a4f09a42c6aaa1dab059259277a7953 Mon Sep 17 00:00:00 2001 From: Quyunshuo Date: Tue, 13 Oct 2020 09:18:53 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=AF=B9View=E5=B1=82=E5=9F=BA?= =?UTF-8?q?=E7=B1=BB=E8=BF=9B=E8=A1=8C=E6=8A=BD=E8=B1=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/mvvm/v/BaseFrameActivity.kt | 5 +---- .../base/mvvm/v/BaseFrameFragment.kt | 6 +----- .../base/mvvm/v/BaseFrameNotMVVMActivity.kt | 4 +--- .../base/mvvm/v/BaseFrameNotMVVMFragment.kt | 4 +--- .../quyunshuo/base/mvvm/v/FrameNotMVVMView.kt | 14 ++++++++++++++ .../com/quyunshuo/base/mvvm/v/FrameView.kt | 19 +++++++++++++++++++ 6 files changed, 37 insertions(+), 15 deletions(-) create mode 100644 Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameNotMVVMView.kt create mode 100644 Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameView.kt diff --git a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameActivity.kt b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameActivity.kt index 641780f..98cbc91 100644 --- a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameActivity.kt +++ b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameActivity.kt @@ -18,7 +18,7 @@ import java.lang.reflect.ParameterizedType * @Remark: Activity基类 与项目无关 */ abstract class BaseFrameActivity : - AppCompatActivity() { + AppCompatActivity(), FrameView { protected val mBinding: VB by lazy(mode = LazyThreadSafetyMode.NONE) { val vbClass: Class = @@ -33,9 +33,6 @@ abstract class BaseFrameActivity : ViewModelProvider(this).get(vmClass) } - protected abstract fun initView() - protected abstract fun initViewObserve() - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(mBinding.root) diff --git a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameFragment.kt b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameFragment.kt index 5b0974b..0afe4e1 100644 --- a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameFragment.kt +++ b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameFragment.kt @@ -19,8 +19,7 @@ import java.lang.reflect.ParameterizedType * @Class: BaseFrameFragment * @Remark: Fragment基类 与项目无关 */ -abstract class BaseFrameFragment : - Fragment() { +abstract class BaseFrameFragment : Fragment(), FrameView { protected val mBinding: VB by lazy(mode = LazyThreadSafetyMode.NONE) { val vbClass: Class = @@ -34,9 +33,6 @@ abstract class BaseFrameFragment : ViewModelProvider(this).get(vmClass) } - protected abstract fun initView() - protected abstract fun initViewObserve() - override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, diff --git a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMActivity.kt b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMActivity.kt index 8539348..9d14453 100644 --- a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMActivity.kt +++ b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMActivity.kt @@ -15,7 +15,7 @@ import java.lang.reflect.ParameterizedType * @Class: BaseFrameNotMVVMActivity * @Remark: 不使用 MVVM 的 Activity 基类 */ -abstract class BaseFrameNotMVVMActivity : AppCompatActivity() { +abstract class BaseFrameNotMVVMActivity : AppCompatActivity(), FrameNotMVVMView { protected val mBinding: VB by lazy(mode = LazyThreadSafetyMode.NONE) { val vbClass: Class = @@ -24,8 +24,6 @@ abstract class BaseFrameNotMVVMActivity : AppCompatActivity() inflate.invoke(null, layoutInflater) as VB } - protected abstract fun initView() - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(mBinding.root) diff --git a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMFragment.kt b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMFragment.kt index 1b766be..5dac2ba 100644 --- a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMFragment.kt +++ b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/BaseFrameNotMVVMFragment.kt @@ -17,7 +17,7 @@ import java.lang.reflect.ParameterizedType * @Class: BaseFrameNotMVVMFragment * @Remark: 不使用 MVVM 的 Fragment 基类 */ -abstract class BaseFrameNotMVVMFragment : Fragment() { +abstract class BaseFrameNotMVVMFragment : Fragment(), FrameNotMVVMView { protected val mBinding: VB by lazy(mode = LazyThreadSafetyMode.NONE) { val vbClass: Class = @@ -26,8 +26,6 @@ abstract class BaseFrameNotMVVMFragment : Fragment() { inflate.invoke(null, layoutInflater) as VB } - protected abstract fun initView() - override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, diff --git a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameNotMVVMView.kt b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameNotMVVMView.kt new file mode 100644 index 0000000..c06249d --- /dev/null +++ b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameNotMVVMView.kt @@ -0,0 +1,14 @@ +package com.quyunshuo.base.mvvm.v + +/** + * @Author: QuYunShuo + * @Time: 2020/10/13 + * @Class: FrameNotMVVMView + * @Remark: View层基类抽象 + */ +interface FrameNotMVVMView { + /** + * 初始化View + */ + fun initView() +} \ No newline at end of file diff --git a/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameView.kt b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameView.kt new file mode 100644 index 0000000..bf9f936 --- /dev/null +++ b/Lib_Base/src/main/java/com/quyunshuo/base/mvvm/v/FrameView.kt @@ -0,0 +1,19 @@ +package com.quyunshuo.base.mvvm.v + +/** + * @Author: QuYunShuo + * @Time: 2020/10/13 + * @Class: FrameView + * @Remark: View层基类抽象 + */ +interface FrameView { + /** + * 初始化View + */ + fun initView() + + /** + * 订阅LiveData + */ + fun initViewObserve() +} \ No newline at end of file