diff --git a/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt b/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt index e01afdec38..b14def2324 100644 --- a/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/ImageViewerActivity.kt @@ -368,7 +368,7 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { if (mUseEnterAndExitAnimation) { mBigImageView?.translationX = mTranslationX mBigImageView?.translationY = mTranslationY - if (mScaleX < Float.MAX_VALUE) { + if (!mScaleX.isNaN() && mScaleX < Float.MAX_VALUE) { mBigImageView?.scaleX = mScaleX mBigImageView?.scaleY = mScaleY } @@ -439,10 +439,18 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { addUpdateListener { va -> mBigImageView?.y = (va.animatedValue as Float) } } val scaleYAnimator = ValueAnimator.ofFloat(1F, mScaleY).apply { - addUpdateListener { va -> mBigImageView?.scaleY = (va.animatedValue as Float) } + addUpdateListener { va -> + if (va.animatedValue is Float && !(va.animatedValue as Float).isNaN() && (va.animatedValue as Float) < Float.MAX_VALUE) { + mBigImageView?.scaleY = (va.animatedValue as Float) + } + } } val scaleXAnimator = ValueAnimator.ofFloat(1F, mScaleX).apply { - addUpdateListener { va -> mBigImageView?.scaleX = (va.animatedValue as Float) } + addUpdateListener { va -> + if (va.animatedValue is Float && !(va.animatedValue as Float).isNaN() && (va.animatedValue as Float) < Float.MAX_VALUE) { + mBigImageView?.scaleX = (va.animatedValue as Float) + } + } } val backgroundAlphaAnimation = ValueAnimator.ofFloat(1F, 0F).apply { addUpdateListener { va -> mBackgroundView.alpha = (va.animatedValue as Float) } @@ -591,10 +599,18 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { addUpdateListener { va -> mBigImageView?.y = (va.animatedValue as Float) } } val scaleYAnimator = ValueAnimator.ofFloat(mScaleY, 1F).apply { - addUpdateListener { va -> mBigImageView?.scaleY = (va.animatedValue as Float) } + addUpdateListener { va -> + if (va.animatedValue is Float && !(va.animatedValue as Float).isNaN() && (va.animatedValue as Float) < Float.MAX_VALUE) { + mBigImageView?.scaleY = (va.animatedValue as Float) + } + } } val scaleXAnimator = ValueAnimator.ofFloat(mScaleX, 1F).apply { - addUpdateListener { va -> mBigImageView?.scaleX = (va.animatedValue as Float) } + addUpdateListener { va -> + if (va.animatedValue is Float && !(va.animatedValue as Float).isNaN() && (va.animatedValue as Float) < Float.MAX_VALUE) { + mBigImageView?.scaleX = (va.animatedValue as Float) + } + } } val backgroundAlphaAnimator = ValueAnimator.ofFloat(0F, 1F).apply { addUpdateListener { va -> mBackgroundView.alpha = (va.animatedValue as Float) } @@ -625,8 +641,10 @@ class ImageViewerActivity : BaseActivity(), OnPageChangeListener { val scaleAnimator = ValueAnimator.ofFloat(scale, finalScale).apply { addUpdateListener { va -> - view.scaleX = (va.animatedValue as Float) - view.scaleY = (va.animatedValue as Float) + if (va.animatedValue is Float && !(va.animatedValue as Float).isNaN() && (va.animatedValue as Float) < Float.MAX_VALUE) { + view.scaleX = (va.animatedValue as Float) + view.scaleY = (va.animatedValue as Float) + } } } val translateXAnimator = ValueAnimator.ofFloat(view.x, finalTranslationX).apply { diff --git a/app/src/main/java/com/gh/gamecenter/forum/detail/ForumArticleAskListFragment.kt b/app/src/main/java/com/gh/gamecenter/forum/detail/ForumArticleAskListFragment.kt index 31cdb894e6..5835bdaf78 100644 --- a/app/src/main/java/com/gh/gamecenter/forum/detail/ForumArticleAskListFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/forum/detail/ForumArticleAskListFragment.kt @@ -269,7 +269,7 @@ class ForumArticleAskListFragment : LazyListFragment 2 || (layout != null && layout.getEllipsisCount(1) > 0)) { val displayName = name.substring(0, name.length - 2) + "…"