Commit 216c2185 authored by leichao.gao's avatar leichao.gao

update download btn anim

parent 506dfa5e
......@@ -9,6 +9,7 @@ import android.app.Dialog
import android.content.Context
import android.net.Uri
import android.net.http.SslError
import android.util.Log
import android.view.View
import android.view.animation.AccelerateDecelerateInterpolator
import android.view.animation.AccelerateInterpolator
......@@ -27,6 +28,7 @@ import android.webkit.WebView
import android.webkit.WebViewClient
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import com.base.browserwhite.MyApplication
import com.base.browserwhite.bean.BookmarkBean
import com.base.browserwhite.bean.DownloadBean
import com.base.browserwhite.bean.HistoryBean
......@@ -43,6 +45,7 @@ import com.base.browserwhite.utils.DownloadUtils.saveDownloadRecordFile
import com.base.browserwhite.utils.LogEx
import com.base.browserwhite.utils.SpBeanUtils
import com.base.browserwhite.utils.SpBeanUtils.HISTORY_SP_KEY
import com.base.browserwhite.utils.Utils.dpToPx
import com.google.gson.Gson
import com.liulishuo.filedownloader.FileDownloader
import kotlinx.coroutines.Dispatchers
......@@ -121,18 +124,21 @@ class WebViewFragment : BaseFragment<FragmentWebViewBinding>() {
fun dropAndBounceButton(button: View) {
// 初始位置
button.isVisible = downloadList.isNotEmpty()
val startTranslationY = button.translationY
// 掉落位置
val dropTranslationY = (-button.height * 3).toFloat()
val dropTranslationY1 = (-button.height * 2).toFloat()
val dropTranslationY = -(MyApplication.context.dpToPx(60f)).toFloat()
val dropTranslationY1 = -(MyApplication.context.dpToPx(20f)).toFloat()
val dropTranslationY2 = -(MyApplication.context.dpToPx(20f)).toFloat()
// 回弹高度
button.isVisible = downloadList.isNotEmpty()
val animator = ValueAnimator.ofFloat(dropTranslationY, startTranslationY, dropTranslationY1 ,startTranslationY)
animator.interpolator = AccelerateDecelerateInterpolator()
animator.duration = 3000
animator.duration = 1000
animator.addUpdateListener { animation ->
Log.d("glc","animation:"+animation)
// 更新按钮的位置
button.translationY = animation.animatedValue as Float
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment