仿炫酷头条小视频拖拽动画( 十 )

在最初的实现当中我忽略了一个很重要的环节,我使用的测试机分辨率为 1080*1920 ,并把列表页 item 的宽高比设置为 9 : 16 ,碰巧使详情页大图跟列表页封面图缩放比例一致从而实现了无缝的过渡。后来测试的小哥哥跑过来告诉我在他手机上过渡有明显的抖动,不符合预期。尼玛,怎么会?一跑,瞪大双眼,还真会,这 . . . 我的锅。

开启调试模式 . . . 咦 . .  过渡动画并没有问题 . . 屏幕比例 . . 图片缩放比例 . . 哈哈,我知道问题所在了,列表封面图的宽高比必须和详情页大图(全屏)的宽高比一致,不然会导致 centerCrop 的缩放比例不一致,引起的抖动问题。那么动态设置封面图图片宽高比:

ConstraintSet constraintSet = 

new

 ConstraintSet();

constraintSet.clone((ConstraintLayout) helper.itemView);

constraintSet.setDimensionRatio(R.id.iv_bg, 

"H,"

 + DensityUtil.getScreenSize(mContext).x + 

":"