gpt4 book ai didi

android - 使用 Nineoldandroids 移植缩放 View - 方法未解决

转载 作者:行者123 更新时间:2023-11-29 00:17:31 24 4
gpt4 key购买 nike

我正在尝试移植 http://developer.android.com/training/animation/zoom.html回到 API < 11。

我正在使用 nineoldandroid 库来执行此操作。然而,nineoldandroid 无法理解这一部分:

        AnimatorSet set = new AnimatorSet();
set.play(ObjectAnimator
.ofFloat(expandedImageView, View.X, startBounds.left))
.with(ObjectAnimator
.ofFloat(expandedImageView,
View.Y, startBounds.top))
.with(ObjectAnimator
.ofFloat(expandedImageView,
View.SCALE_X, startScaleFinal))
.with(ObjectAnimator
.ofFloat(expandedImageView,
View.SCALE_Y, startScaleFinal));

我把它变成了:

AnimatorSet set = new AnimatorSet();
set.playTogether(
ObjectAnimator.ofFloat(expandedImageView, View.X, startBounds.left, finalBounds.left),
ObjectAnimator.ofFloat(expandedImageView, View.Y, startBounds.top, finalBounds.top),
ObjectAnimator.ofFloat(expandedImageView, View.SCALE_X, startScale, 1f),
ObjectAnimator.ofFloat(expandedImageView, View.SCALE_Y, startScale, 1f)
);

但是不接受 View.X、View.Y、View.SCALE_X 和 View.SCALE_Y。

是否应将这些替换为字符串“translationX”、“translationY”和“scaleX”、“scaleY”?

最佳答案

我最初的猜测是正确的,但不需要 playTogether。

这是解决方案:

set
.play(ObjectAnimator.ofFloat(expandedImageView, "translationX", startBounds.left, finalBounds.left))
.with(ObjectAnimator.ofFloat(expandedImageView, "translationY", startBounds.top, finalBounds.top))
.with(ObjectAnimator.ofFloat(expandedImageView, "scaleX", startScale, 1f))
.with(ObjectAnimator.ofFloat(expandedImageView, "scaleY", startScale, 1f));

关于android - 使用 Nineoldandroids 移植缩放 View - 方法未解决,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25582599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com