Android:ImageView上的矩阵操作,动画?

Android:ImageView上的矩阵操作,动画?,android,animation,matrix,translation,imageview,Android,Animation,Matrix,Translation,Imageview,我正在使用矩阵来平移/缩放图像视图,在设置ImageMatrix后,结果将直接显示,是否有方法使其动画化 谢谢 您可以尝试使用蜂巢中引入的新动画框架,但我不知道这是否可以直接用于图像矩阵。可以将使用矩阵应用的变换转换为基本动画变换,例如缩放、平移、旋转、alpha 如果你的目标是Android 2.x设备,你可以使用Jake Wharton的Nineodeldroids[1],它是蜂巢新动画框架的一个后端口。它非常容易使用,因为它模仿了您在11+设备上使用的相同API [1] 放大是平移和缩放的

我正在使用矩阵来平移/缩放图像视图,在设置ImageMatrix后,结果将直接显示,是否有方法使其动画化


谢谢

您可以尝试使用蜂巢中引入的新动画框架,但我不知道这是否可以直接用于图像矩阵。可以将使用矩阵应用的变换转换为基本动画变换,例如缩放、平移、旋转、alpha

如果你的目标是Android 2.x设备,你可以使用Jake Wharton的Nineodeldroids[1],它是蜂巢新动画框架的一个后端口。它非常容易使用,因为它模仿了您在11+设备上使用的相同API


[1] 放大是平移和缩放的结合:

// zooms in to the center of the screen
mZoomIn = new AnimationSet(true);

mTranslate = new TranslateAnimation(
                Animation.ABSOLUTE, 0.0f, Animation.ABSOLUTE, -imageViewXCoord/(mScreenWidth/mImageViewWidth),
                Animation.ABSOLUTE, 0.0f, Animation.ABSOLUTE, -imageViewYCoord/(mScreenWidth/mImageViewWidth)
            );
mTranslate.setDuration(200);

mScale = new ScaleAnimation(1, mScreenWidth/mImageViewWidth, 1, mScreenWidth/mImageViewWidth);
mScale.setDuration(200);

mZoomIn.addAnimation(mTranslate);
mZoomIn.addAnimation(mScale);
mZoomIn.setFillAfter(true);
mZoomIn.setFillEnabled(true);

mImageView.startAnimation(mZoomIn);
缩小需要在放大时使用反向插值器,之后可以根据法线在图像视图上调用startAnimation:

mZoomIn.setInterpolator(new ReverseInterpolator())

你在做可缩放的imageview吗?我不确定,我只是在布局文件中将scaleType设置为matrix,在活动中我检测拖动和收缩,并操纵imageview的矩阵。我的意思是说你想在图像视图上放大和缩小是的,我想放大和缩小(以及平移),我通过在imageview上使用matrix来实现,但是没有动画。