From 6a7081a1d822b3ac7990dbd2331790a0e6b61302 Mon Sep 17 00:00:00 2001 From: Fitz Date: Tue, 9 Aug 2022 20:28:15 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20cleanup=20code=EF=BC=9B=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E9=9D=9E=E5=BF=85=E9=A1=BB=E7=9A=84=20java=20to=20kot?= =?UTF-8?q?lin=20code;=E5=87=8F=E5=B0=91=E9=9D=9E=E5=BF=85=E9=A1=BB?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../me/yifeiyuan/flapdev/FlapApplication.kt | 2 +- .../main/java/me/yifeiyuan/flapdev/Mocks.kt | 2 +- .../components/CustomViewTypeComponent.kt | 4 --- .../components/DataBindingComponent.kt | 26 +++++++++++++++ .../SimpleDataBindingComponent.java | 32 ------------------- .../SimpleDataBindingModel.java | 13 -------- .../flapdev/showcase/DiffAdapterTestcase.kt | 4 --- .../showcase/FlapRecyclerViewTestcase.kt | 5 +-- .../layout/flap_item_simple_databinding.xml | 2 +- build.gradle | 6 ---- flap-annotations/build.gradle | 14 +------- flap-compiler/build.gradle | 13 +------- flap-gradle-plugin/build.gradle | 32 +------------------ .../main/java/me/yifeiyuan/flap/Component.kt | 2 ++ .../flap/ktmodule/KtComponentModel.kt | 7 ---- .../flap/ktmodule/KtModuleComponent.kt | 3 ++ .../othermodule/vb/ViewBindingComponent.kt | 3 ++ .../othermodule/vb/ViewBindingModel.java | 7 ---- 18 files changed, 43 insertions(+), 134 deletions(-) create mode 100644 app/src/main/java/me/yifeiyuan/flapdev/components/DataBindingComponent.kt delete mode 100644 app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingComponent.java delete mode 100644 app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingModel.java delete mode 100644 ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtComponentModel.kt delete mode 100644 othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingModel.java diff --git a/app/src/main/java/me/yifeiyuan/flapdev/FlapApplication.kt b/app/src/main/java/me/yifeiyuan/flapdev/FlapApplication.kt index 53c8f0e9..80ccd62d 100644 --- a/app/src/main/java/me/yifeiyuan/flapdev/FlapApplication.kt +++ b/app/src/main/java/me/yifeiyuan/flapdev/FlapApplication.kt @@ -38,7 +38,7 @@ class FlapApplication : MultiDexApplication() { TestClickComponentAdapterDelegate(), TestBinderComponentAdapterDelegate(), TestAllComponentAdapterDelegate(), - SimpleDataBindingComponentAdapterDelegate(), + DataBindingComponentAdapterDelegate(), DiffComponentAdapterDelegate(), ) diff --git a/app/src/main/java/me/yifeiyuan/flapdev/Mocks.kt b/app/src/main/java/me/yifeiyuan/flapdev/Mocks.kt index 6d5fffe7..7c53fb31 100644 --- a/app/src/main/java/me/yifeiyuan/flapdev/Mocks.kt +++ b/app/src/main/java/me/yifeiyuan/flapdev/Mocks.kt @@ -2,7 +2,7 @@ package me.yifeiyuan.flapdev import me.yifeiyuan.flap.ktmodule.KtComponentModel import me.yifeiyuan.flapdev.components.* -import me.yifeiyuan.flapdev.components.databindingsample.SimpleDataBindingModel +import me.yifeiyuan.flapdev.components.SimpleDataBindingModel import me.yifeiyuan.flapdev.components.generictest.GenericModel import me.yifeiyuan.ktx.foundation.othermodule.JavaModuleModel import me.yifeiyuan.ktx.foundation.othermodule.vb.ViewBindingModel diff --git a/app/src/main/java/me/yifeiyuan/flapdev/components/CustomViewTypeComponent.kt b/app/src/main/java/me/yifeiyuan/flapdev/components/CustomViewTypeComponent.kt index f871a2be..06479762 100644 --- a/app/src/main/java/me/yifeiyuan/flapdev/components/CustomViewTypeComponent.kt +++ b/app/src/main/java/me/yifeiyuan/flapdev/components/CustomViewTypeComponent.kt @@ -38,8 +38,4 @@ class CustomViewTypeComponentDelegate : AdapterDelegate(binding.getRoot()) { + + override fun onBind(model: SimpleDataBindingModel?) { + binding.model = model + binding.executePendingBindings() + } + +} \ No newline at end of file diff --git a/app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingComponent.java b/app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingComponent.java deleted file mode 100644 index 4e629e06..00000000 --- a/app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingComponent.java +++ /dev/null @@ -1,32 +0,0 @@ -package me.yifeiyuan.flapdev.components.databindingsample; - -import androidx.annotation.NonNull; - -import me.yifeiyuan.flap.Component; -import me.yifeiyuan.flap.annotations.Delegate; -import me.yifeiyuan.flapdev.databinding.FlapItemSimpleDatabindingBinding; - -/** - * Flap Github: https://github.com/AlanCheen/Flap - * - * @author 程序亦非猿 [Follow me]( https://github.com/AlanCheen) - * @since 2020/3/26 3:28 PM - * @since 1.0 - */ -//@Delegate(layoutId = R.layout.flap_item_simple_databinding, useDataBinding = true) -@Delegate(layoutName ="flap_item_simple_databinding", useDataBinding = true) -public class SimpleDataBindingComponent extends Component { - - private FlapItemSimpleDatabindingBinding binding; - - public SimpleDataBindingComponent(@NonNull final FlapItemSimpleDatabindingBinding binding) { - super(binding.getRoot()); - this.binding = binding; - } - - @Override - public void onBind(SimpleDataBindingModel model) { - binding.setModel(model); - binding.executePendingBindings(); - } -} diff --git a/app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingModel.java b/app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingModel.java deleted file mode 100644 index ca4bf56d..00000000 --- a/app/src/main/java/me/yifeiyuan/flapdev/components/databindingsample/SimpleDataBindingModel.java +++ /dev/null @@ -1,13 +0,0 @@ -package me.yifeiyuan.flapdev.components.databindingsample; - -/** - * Flap Github: https://github.com/AlanCheen/Flap - * - * @author 程序亦非猿 [Follow me]( https://github.com/AlanCheen) - * @since 2020/3/26 3:28 PM - * @since 1.5 - */ -public class SimpleDataBindingModel { - - public String text = "该 Component 使用了 DataBinding"; -} diff --git a/app/src/main/java/me/yifeiyuan/flapdev/showcase/DiffAdapterTestcase.kt b/app/src/main/java/me/yifeiyuan/flapdev/showcase/DiffAdapterTestcase.kt index 2471bc5c..84a90941 100644 --- a/app/src/main/java/me/yifeiyuan/flapdev/showcase/DiffAdapterTestcase.kt +++ b/app/src/main/java/me/yifeiyuan/flapdev/showcase/DiffAdapterTestcase.kt @@ -58,10 +58,6 @@ class DiffAdapterTestcase : BaseTestcaseFragment() { } } - override fun onInit(view: View) { - super.onInit(view) - } - override fun createRefreshData(size: Int): MutableList { val list = mutableListOf() repeat(20) { diff --git a/app/src/main/java/me/yifeiyuan/flapdev/showcase/FlapRecyclerViewTestcase.kt b/app/src/main/java/me/yifeiyuan/flapdev/showcase/FlapRecyclerViewTestcase.kt index f09ec77b..a4a467ac 100644 --- a/app/src/main/java/me/yifeiyuan/flapdev/showcase/FlapRecyclerViewTestcase.kt +++ b/app/src/main/java/me/yifeiyuan/flapdev/showcase/FlapRecyclerViewTestcase.kt @@ -66,7 +66,8 @@ class FlapRecyclerViewTestcase : BaseTestcaseFragment() { override fun createRefreshData(size: Int): MutableList { return super.createRefreshData(size).apply { - add(0, ZeroHeightModel()) + // 测试第一个 item 是 高度=0 的组件是否影响下拉刷新,结果应该是:依然能够下拉刷新。 +// add(0, ZeroHeightModel()) } } @@ -81,7 +82,7 @@ class FlapRecyclerViewTestcase : BaseTestcaseFragment() { override fun onOptionsItemSelected(item: MenuItem): Boolean { when (item.itemId) { R.id.emptyData -> { - flapRecyclerView.setData(createRefreshData(0)) + flapRecyclerView.setData(mutableListOf()) } R.id.resetData -> { flapRecyclerView.setData(createRefreshData(30)) diff --git a/app/src/main/res/layout/flap_item_simple_databinding.xml b/app/src/main/res/layout/flap_item_simple_databinding.xml index 21c83536..6a892bc1 100644 --- a/app/src/main/res/layout/flap_item_simple_databinding.xml +++ b/app/src/main/res/layout/flap_item_simple_databinding.xml @@ -5,7 +5,7 @@ + type="me.yifeiyuan.flapdev.components.SimpleDataBindingModel" /> diff --git a/build.gradle b/build.gradle index ca49e969..5c7e9835 100644 --- a/build.gradle +++ b/build.gradle @@ -15,13 +15,7 @@ buildscript { dependencies { classpath 'com.android.tools.build:gradle:4.0.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' - - //jcenter 时代用的 -// classpath "guru.stefma.bintrayrelease:bintrayrelease:1.1.1" -// classpath 'com.novoda:bintray-release:0.9' - //jcenter 时代用的 } } diff --git a/flap-annotations/build.gradle b/flap-annotations/build.gradle index 469796c2..4c0369be 100644 --- a/flap-annotations/build.gradle +++ b/flap-annotations/build.gradle @@ -9,16 +9,4 @@ dependencies { } sourceCompatibility = "7" -targetCompatibility = "7" - - -//apply plugin: 'com.novoda.bintray-release' -// -//publish { -// userOrg = 'alancheen' -// groupId = 'me.yifeiyuan.flap' -// artifactId = 'flap-annotations' -// publishVersion = '2.2.0' -// desc = 'flap annotations' -// website = 'https://github.com/AlanCheen/Flap' -//} \ No newline at end of file +targetCompatibility = "7" \ No newline at end of file diff --git a/flap-compiler/build.gradle b/flap-compiler/build.gradle index e656c30c..98cb066b 100644 --- a/flap-compiler/build.gradle +++ b/flap-compiler/build.gradle @@ -15,15 +15,4 @@ dependencies { } sourceCompatibility = "7" -targetCompatibility = "7" -// -//apply plugin: 'com.novoda.bintray-release' -// -//publish { -// userOrg = 'alancheen' -// groupId = 'me.yifeiyuan.flap' -// artifactId = 'flap-compiler' -// publishVersion = '2.2.0' -// desc = 'flap annotations' -// website = 'https://github.com/AlanCheen/Flap' -//} \ No newline at end of file +targetCompatibility = "7" \ No newline at end of file diff --git a/flap-gradle-plugin/build.gradle b/flap-gradle-plugin/build.gradle index d5142f94..dd4fcb89 100644 --- a/flap-gradle-plugin/build.gradle +++ b/flap-gradle-plugin/build.gradle @@ -19,34 +19,4 @@ targetCompatibility = "1.8" repositories { mavenCentral() -} - -//publishing { -// -// publications { -// -// mavenJava(MavenPublication) { -// artifactId = 'plugin' -// groupId = 'me.yifeiyuan.flap' -// from components.java -// version = '1.0.2' -// } -// } -// -// repositories { -// maven { -// url = "$rootProject.projectDir/repos" -// } -// } -//} -// -//apply plugin: 'com.novoda.bintray-release' -// -//publish { -// userOrg = 'alancheen' -// groupId = 'me.yifeiyuan.flap' -// artifactId = 'plugin' -// publishVersion = '1.1.0-test' -// desc = 'flap plugin' -// website = 'https://github.com/AlanCheen/Flap' -//} \ No newline at end of file +} \ No newline at end of file diff --git a/flap/src/main/java/me/yifeiyuan/flap/Component.kt b/flap/src/main/java/me/yifeiyuan/flap/Component.kt index f0dfb83f..91cc4860 100644 --- a/flap/src/main/java/me/yifeiyuan/flap/Component.kt +++ b/flap/src/main/java/me/yifeiyuan/flap/Component.kt @@ -1,3 +1,5 @@ +@file:Suppress("MemberVisibilityCanBePrivate", "MemberVisibilityCanBePrivate", "MemberVisibilityCanBePrivate", "MemberVisibilityCanBePrivate", "MemberVisibilityCanBePrivate", "MemberVisibilityCanBePrivate", "MemberVisibilityCanBePrivate", "MemberVisibilityCanBePrivate") + package me.yifeiyuan.flap import android.content.Context diff --git a/ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtComponentModel.kt b/ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtComponentModel.kt deleted file mode 100644 index d3b9def6..00000000 --- a/ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtComponentModel.kt +++ /dev/null @@ -1,7 +0,0 @@ -package me.yifeiyuan.flap.ktmodule - -/** - * Created by 程序亦非猿 on 2020/9/30. - */ -class KtComponentModel { -} \ No newline at end of file diff --git a/ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtModuleComponent.kt b/ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtModuleComponent.kt index 8a5e6e39..a8f5b9c8 100644 --- a/ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtModuleComponent.kt +++ b/ktmodule/src/main/java/me/yifeiyuan/flap/ktmodule/KtModuleComponent.kt @@ -10,6 +10,9 @@ import me.yifeiyuan.flap.annotations.Delegate /** * Created by 程序亦非猿 on 2020/9/30. */ + +class KtComponentModel + @Delegate(layoutName = "kt_module_component") class KtModuleComponent(itemView: View) : Component(itemView) { diff --git a/othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingComponent.kt b/othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingComponent.kt index a89d84e8..53e3c9a6 100644 --- a/othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingComponent.kt +++ b/othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingComponent.kt @@ -14,6 +14,9 @@ import me.yifeiyuan.ktx.foundation.othermodule.databinding.FlapItemVbBinding * 使用 ViewBinding 的例子 * Created by 程序亦非猿 on 2020/9/30. */ + +class ViewBindingModel + @Delegate(layoutName = "flap_item_vb", useViewBinding = true) class ViewBindingComponent(var binding: FlapItemVbBinding) : Component(binding.root) { diff --git a/othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingModel.java b/othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingModel.java deleted file mode 100644 index 23c30566..00000000 --- a/othermodule/src/main/java/me/yifeiyuan/ktx/foundation/othermodule/vb/ViewBindingModel.java +++ /dev/null @@ -1,7 +0,0 @@ -package me.yifeiyuan.ktx.foundation.othermodule.vb; - -/** - * Created by 程序亦非猿 on 2020/9/30. - */ -public class ViewBindingModel { -}