在canvas.scale android之后验证sharedelement转换

时间:2016-05-25 13:42:25

标签: android android-canvas android-transitions

我做了几次谷歌搜索,无法想出这个。 我正在尝试复制谷歌照片的行为,当一个人捏一个图像时,图像会转换回该位置。

一切正常。 唯一的问题是当发生后转换时,转换发生在旧的全尺寸图像上。

更清楚的是,我缩放了我的活动的根视图的画布,以便活动内的所有内容都缩小。 在这种情况下,rootview中的内容只是一个图像。 在收缩结束时,比例因子将为0.5f。 (正常尺寸的50%) 然后发生回归过渡,问题就发生了。在动画制作之前,过渡会缩放到原始(100%)大小,这使得它看起来像画布的缩放从未发生过。

我希望这很清楚英语不是我的母语。

代码:

    canvas.save(Canvas.MATRIX_SAVE_FLAG);
    canvas.scale(mScaleFactor, mScaleFactor,mScreenX,mScreenY);

    canvas.rotate(mRotationDegree,mScreenX,mScreenY);

    super.dispatchDraw(canvas);
    canvas.restore();

1 个答案:

答案 0 :(得分:0)

我发现画布没有一直更新,我在视图组上转换为setScaleY和setScaleX