将变换动画从视图应用到另一个视图

时间:2015-11-10 18:56:09

标签: android animation android-view transformation

我想通过动画转换两个视图。例如,我有一个带文本的TextView和带有图像的ImageView。我希望能够在TextView和ImageView之间进行转换效果。有人知道怎么做? Android有一些库吗?提前谢谢!

我的意思是这样的:

Transformations

1 个答案:

答案 0 :(得分:2)

您无法在Android中的两个Views之间进行变换。但是,您可以通过变形这些视图的位图来表达这种情况。

您在问题中显示的那个不是从一个视图变形到另一个视图。它是在同一视图中完成的自定义绘图。如果你考虑一下,它只是在onDraw()的{​​{1}}内操纵线条。这是你在正常情况下会怎么做。因此,如果您想在应用中执行此类动画,则需要编写自己的自定义View并自行绘制。

但是如果您要在导航栏中执行此操作,就像您在问题中所示,您需要编写自己的自定义View。您可以在此处参考代码:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.0.2_r1/android/support/v7/app/ActionBarDrawerToggle.java

在此,您可以参考静态类ActionBarDrawerToggle。但大多数工作都是在其父类DrawerArrowDrawableToggle中完成的。这是负责Android中默认提供的DrawerArrowDrawable动画的人。因此,您需要编写自己的Hamburger to Arrow

Drawable