【转】setAnimation和startAnimation区别
2015-11-19 13:57
246 查看
http://stackoverflow.com/questions/10909865/setanimation-vs-startanimation-in-android
/article/2402842.html
设置一个动画播放这一观点。如果你想立即播放的动画,使用startAnimation这种方法提供了允许细粒度控制的起始时间和失效,
但你必须确保:1)动画开始时间 2)动画应该开始时的观点,将被视为无效。
[java] view plaincopyprint?
<span id="result_box" lang="zh-CN"></span>
/**
* Sets the next animation to play for this view.
* If you want the animation to play immediately, use
* startAnimation. This method provides allows fine-grained
* control over the start time and invalidation, but you
* must make sure that 1) the animation has a start time set, and
* 2) the view will be invalidated when the animation is supposed to
* start.
*
* @param animation The next animation, or null.
*/
public void setAnimation(Animation animation) {
mCurrentAnimation = animation;
if (animation != null) {
animation.reset();
}
}
现在开始指定的动画。
[java] view plaincopyprint?
/**
* Start the specified animation now.
*
* @param animation the animation to start now
*/
public void startAnimation(Animation animation) {
animation.setStartTime(Animation.START_ON_FIRST_FRAME);
setAnimation(animation);
invalidateParentCaches();
invalidate(true);
}
建议使用
startAnimation来启动动画,setAnimation启动动画是需要条件的
/article/2402842.html
设置一个动画播放这一观点。如果你想立即播放的动画,使用startAnimation这种方法提供了允许细粒度控制的起始时间和失效,
但你必须确保:1)动画开始时间 2)动画应该开始时的观点,将被视为无效。
[java] view plaincopyprint?
<span id="result_box" lang="zh-CN"></span>
/**
* Sets the next animation to play for this view.
* If you want the animation to play immediately, use
* startAnimation. This method provides allows fine-grained
* control over the start time and invalidation, but you
* must make sure that 1) the animation has a start time set, and
* 2) the view will be invalidated when the animation is supposed to
* start.
*
* @param animation The next animation, or null.
*/
public void setAnimation(Animation animation) {
mCurrentAnimation = animation;
if (animation != null) {
animation.reset();
}
}
现在开始指定的动画。
[java] view plaincopyprint?
/**
* Start the specified animation now.
*
* @param animation the animation to start now
*/
public void startAnimation(Animation animation) {
animation.setStartTime(Animation.START_ON_FIRST_FRAME);
setAnimation(animation);
invalidateParentCaches();
invalidate(true);
}
建议使用
startAnimation来启动动画,setAnimation启动动画是需要条件的
相关文章推荐
- 关于近期状态
- 对js运算符“||”和“&&”的总结
- vim右键粘贴 等杂
- 转:如何实现一个滚动列表
- 关于DCMTK3.6.0源代码编译的总结
- zabbix打开慢的原因和优化尝试
- javaweb学习总结(四十二)——Filter(过滤器)学习
- 高斯函数一阶求导二阶求导
- MySQL连接失效
- 制作已签名的Debian仓库
- Django学习笔记2
- Linux下源码编译安装Mysql
- 跨域信息访问Cookie跨域访问
- PhoneGap插件调用Java流程源码分析(三)
- js中this关键字的指向问题
- 使用objc_msgSend出现Too many arguments to function call, expected 0, have 2
- Exchange Rates
- Linux设备驱动之字符设备驱动
- PHP与Redis开发环境的简单配置
- 编程基础知识之错误处理