【发布时间】:2023-03-15 09:56:01
【问题描述】:
我有一个 ImageView 设置为 scaleType="centerCrop" ,我正在尝试创建一个动画,将这个 ImageView 平移到它的左右边缘,这超出了视图的范围。
我该怎么做?
通常在制作动画时,我已经在屏幕上看到了完整的视图,但在这种情况下,ImageView 本身会被渲染,但它的源被缩放到其视图范围之外。因此,如果我只是为 VIEW 本身设置动画,我将不会访问源代码。
这可能与在图像视图中的画布上制作动画有关,而不是移动图像视图本身的 X、Y 位置。洞察力赞赏
关于“过于宽泛”的指控无法结束这个问题,是的,不是。
【问题讨论】:
-
一种方法是通过操作 ImageView 的图像矩阵,虽然它有点复杂并且没有很好的文档记录。这与制作图像视图非常相似,您可以在其中放大和平移触摸手势。所以你也许可以尝试找到这些的在线源代码,然后将其修改为动画(例如 AsyncTask)而不是 onTouch。比如这样:github.com/judepereira/android-multitouch/blob/master/src/com/…
-
@Gak2 好建议,我想我在这个应用程序的另一部分使用了一些类似的代码
标签: android canvas imageview android-animation pan