diff --git a/app/src/main/java/com/gh/common/util/DialogUtils.java b/app/src/main/java/com/gh/common/util/DialogUtils.java index 030f5a5ecf..dff535fb35 100644 --- a/app/src/main/java/com/gh/common/util/DialogUtils.java +++ b/app/src/main/java/com/gh/common/util/DialogUtils.java @@ -51,7 +51,6 @@ import androidx.recyclerview.widget.RecyclerView; import kotlin.Unit; import kotlin.jvm.functions.Function0; -import com.airbnb.lottie.LottieAnimationView; import com.facebook.drawee.generic.GenericDraweeHierarchy; import com.facebook.drawee.view.SimpleDraweeView; import com.gh.common.AppExecutor; @@ -111,7 +110,6 @@ public class DialogUtils { View view = View.inflate(context, R.layout.set_wait_dialog, null); TextView message = view.findViewById(R.id.set_wait_message); message.setText(msg); - ((LottieAnimationView) view.findViewById(R.id.loadingLottie)).setAnimation("lottie/loading.json"); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog.setContentView(view); dialog.setCanceledOnTouchOutside(false); diff --git a/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt b/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt index 9e401f3d39..716b617adf 100644 --- a/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt @@ -299,7 +299,7 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { // 处理非等比例缩放的图片 private fun resizeImage(position: Int) { mBigImageView?.ssiv?.run { - mScale = mBigImageView?.ssiv?.scale ?: 0F + mScale = scale mImageRatio = sWidth / sHeight.toFloat() mViewRatio = mOriginWidth / mOriginHeight.toFloat() if (!shouldResize()) return @@ -466,12 +466,10 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { } } - private fun shouldResize() = !(abs(mImageRatio - mViewRatio) <= 0.1F || scaleWithoutResize()) + private fun shouldResize() = abs(mImageRatio - mViewRatio) > RATIO_DIFF private fun justChangeBoundsAndTransform() = mImageRatio < mViewRatio && mIsFromImageContainerView && adapter?.count == 1 - private fun scaleWithoutResize() = mScale in 0.95F..1.05F && !justChangeBoundsAndTransform() - private fun startEndTransition() { if (mAnimating) return val doResizeTransition = Runnable { @@ -721,10 +719,6 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { return ObjectAnimator.ofFloat(startHeight.toFloat(), endHeight.toFloat()).apply { addUpdateListener { sceneRoot.findViewById(R.id.viewimage_iv_show)?.ssiv?.run { - if (abs(mImageRatio - mViewRatio) > 0.1F && scaleWithoutResize()) { - maxScale = scale - setMinimumScaleType(SubsamplingScaleImageView.SCALE_TYPE_CENTER_CROP) - } setScaleAndCenter(minScale, PointF(sWidth / 2F, sHeight / 2F)) } } @@ -878,6 +872,7 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { companion object { const val REQUEST_FOR_VIEWED_IMAGE = 921 const val VIEWED_IMAGE = "viewed_image" + const val RATIO_DIFF = 0.01F private const val KEY_BASE64 = "base64" private const val KEY_URL_LIST = "urls" diff --git a/app/src/main/res/layout/set_wait_dialog.xml b/app/src/main/res/layout/set_wait_dialog.xml index 3752f480b0..c7cf06687e 100644 --- a/app/src/main/res/layout/set_wait_dialog.xml +++ b/app/src/main/res/layout/set_wait_dialog.xml @@ -14,6 +14,7 @@ android:layout_marginStart="69dp" android:layout_marginTop="15dp" android:layout_marginEnd="69dp" + app:lottie_fileName="lottie/loading.json" app:lottie_autoPlay="true" app:lottie_loop="true" />