Android开发中动画使用的注意事项

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/YANGWEIQIAO/article/details/52798969

在Android开发过程中我们都知道,有一些比较酷炫的效果都是通过动画来实现的,Android提供了View动画、帧动画和属性动画三种动画,具体的使用方法和介绍网上有很多的介绍,这里我不做多余的赘述,在这篇博客里呢,我想就使用动画的一些注意事项做一些说明,希望对大家有用。

1.OOM问题

这个问题主要出现在帧动画中,当图片数量较多且图片较大时就极易出现OOM,这个在实际的开发中要尤其注意,尽量避免使用帧动画。

2.内存泄露

在属性动画中有一类无限循环的动画,这类动画需要在activity退出时及时停止,否则将导致activity无法释放从而造成内存泄露,通过验证后发现View动画并不存在此问题。

3.兼容性问题

动画在3.0以下的系统上有兼容性问题,在某些特殊场景可能无法正常工作,因此要做好适配工作。

4.View动画的问题

View动画是对View的影像做动画,并不是真正的改变了View的状态,因此有时候会出现动画完成后View无法隐藏的现象,即setVisibility(View.GONE)失效了,这个时候只要调用view.clearAnimation()清除View动画即可解决此问题。

5.不要使用px

在进行动画的过程中,要尽量使用dp,使用px会导致在不同的设备上有不同的效果。

6.动画元素的交互

将view移动(平移)后,在Android3.0以前的系统上,不管是View动画还是属性动画,新位置均无法出发触发事件,同事,老位置仍然可以触发单击事件。尽管View已经在视觉上不存在了,将View移动回原位置以后,原位置的单击事件继续生效。从3.0开始,属性动画的单击事件触发位置为移动后的位置,但是View动画仍然在原位置。

7.硬件加速

使用动画的过程中,建议开启硬件加速,这样会提高动画的流畅性。

猜你喜欢

转载自blog.csdn.net/YANGWEIQIAO/article/details/52798969