Skip to content

Commit

Permalink
2.0.3版本
Browse files Browse the repository at this point in the history
  • Loading branch information
ShenBen committed Oct 13, 2024
1 parent ea8bd80 commit 4ec2a77
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 10 deletions.
35 changes: 34 additions & 1 deletion app/src/main/java/com/shencoder/mvvmkitdemo/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,20 @@ import android.graphics.BitmapFactory
import android.graphics.Color
import android.graphics.drawable.GradientDrawable
import android.os.Bundle
import androidx.lifecycle.lifecycleScope
import com.shencoder.mvvmkit.base.view.BaseSupportActivity
import com.shencoder.mvvmkit.ext.base64ToByteArray
import com.shencoder.mvvmkit.ext.clickWithTrigger
import com.shencoder.mvvmkit.ext.dp2px
import com.shencoder.mvvmkit.ext.getColor
import com.shencoder.mvvmkit.ext.getDimensionPixelSize
import com.shencoder.mvvmkit.ext.getDrawable
import com.shencoder.mvvmkit.ext.gradientDrawable
import com.shencoder.mvvmkit.ext.logI
import com.shencoder.mvvmkit.ext.shapeDrawable
import com.shencoder.mvvmkit.http.DownloadFile
import com.shencoder.mvvmkit.http.downloadFile
import com.shencoder.mvvmkit.network.NetworkObserverManager
import com.shencoder.mvvmkit.util.AppUtils
import com.shencoder.mvvmkit.util.MoshiUtils
import com.shencoder.mvvmkit.util.NullSafeMoshiUtils
Expand All @@ -24,6 +30,7 @@ import com.shencoder.mvvmkitdemo.databinding.ActivityMainBinding
import com.squareup.moshi.Moshi
import com.squareup.moshi.Types
import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory
import kotlinx.coroutines.launch
import org.koin.androidx.viewmodel.ext.android.viewModel


Expand Down Expand Up @@ -141,8 +148,34 @@ class MainActivity : BaseSupportActivity<MainViewModel, ActivityMainBinding>() {
)
)

}
// lifecycleScope.launch {
// downloadFile(url = "", filePath = "", md5 = "") {
// start {
//
// }
// progress { totalSize, downloadSize, progress ->
//
// }
// success { file, fileMd5, md5VerifySuccess ->
//
// }
// error {
//
// }
// }.startDownload()
//
// DownloadFile(url = "", filePath = "", md5 = "").start {
//
// }.progress { totalSize, downloadSize, progress ->
//
// }.success { file, fileMd5, md5VerifySuccess ->
//
// }.error {
//
// }.startDownload()
// }

}

override fun initData(savedInstanceState: Bundle?) {

Expand Down
2 changes: 1 addition & 1 deletion lib/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ afterEvaluate {
// You can then customize attributes of the publication as shown below.
groupId = 'com.shencoder'
artifactId = 'mvvmkit'
version = '2.0.2'
version = '2.0.3'
}
}
}
Expand Down
11 changes: 4 additions & 7 deletions lib/src/main/java/com/shencoder/mvvmkit/ext/AndroidExt.kt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import android.content.ClipboardManager
import android.content.Context
import android.content.ContextWrapper
import android.content.Intent
import android.graphics.drawable.Drawable
import android.net.Uri
import android.os.Handler
import android.os.Looper
Expand Down Expand Up @@ -224,13 +223,11 @@ inline fun <reified T : Activity> Fragment.startActivity(block: Intent.() -> Uni
}

@ColorInt
fun @receiver:ColorRes Int.getColor(): Int {
return ContextCompat.getColor(AppManager.context, this)
}
fun @receiver:ColorRes Int.getColor() =
ContextCompat.getColor(AppManager.context, this)

fun @receiver:DrawableRes Int.getDrawable(): Drawable? {
return ContextCompat.getDrawable(AppManager.context, this)
}
fun @receiver:DrawableRes Int.getDrawable() =
ContextCompat.getDrawable(AppManager.context, this)

@Px
fun @receiver:DimenRes Int.getDimensionPixelSize() =
Expand Down
7 changes: 6 additions & 1 deletion lib/src/main/java/com/shencoder/mvvmkit/ext/ViewExt.kt
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
@file:JvmName("ViewExt")

package com.shencoder.mvvmkit.ext

import android.view.View
Expand All @@ -9,6 +11,9 @@ fun View.isLayoutRTL(): Boolean {

private var triggerLastTime: Long = 0L

var DEFAULT_CLICK_INTERVAL = 300L


/**
* 点击防抖动,默认500ms
* tips:这个操作是全局的
Expand All @@ -18,7 +23,7 @@ private var triggerLastTime: Long = 0L
* @param block
* @receiver
*/
fun <T : View> T.clickWithTrigger(interval: Long = 500, block: (T) -> Unit) {
fun <T : View> T.clickWithTrigger(interval: Long = DEFAULT_CLICK_INTERVAL, block: (T) -> Unit) {
setOnClickListener {
val currentClickTime = System.currentTimeMillis()
if (currentClickTime - triggerLastTime >= interval) {
Expand Down

0 comments on commit 4ec2a77

Please sign in to comment.