android不用xml文件,动态写Animation,注:Animation并不会真正移动控件,需要调用onAnimationEnd
2016-09-27 23:34
543 查看
android不用xml文件,动态写Animation
// 移动animation
public static void Translate(View view, float fromX, float toX, float fromY,
float toY, long durationMillis) {
as = new AnimationSet(true);
TranslateAnimation ta = new TranslateAnimation(fromX, toX, fromY,
toY);
ta.setFillAfter(true);
ta.setFillBefore(false);
ta.setDuration(durationMillis);
as.addAnimation(ta);
as.setFillAfter(true);
as.setFillBefore(false);
view.startAnimation(as);
}
今天在使用TranslateAnimation位移一个LinearLayout时,发现动画完成后又会自动回到初始的状态,设置了fillAfter也不太管用。
在网上搜了一圈,发现:
这种现象很正常,因为TranslateAnimation只负责实现位移动画效果,并不会真正的改变LinearLayout的位置,所以需要加一个AnimationListener ,在动画结束(onAnimationEnd() )后,通过设置LayoutParam里相关属性来改变LinearLayout位置才行。
原文:http://www.androidstar.cn/android不用xml文件,动态写animation注:animation并不会真正移动控件/
// 移动animation
public static void Translate(View view, float fromX, float toX, float fromY,
float toY, long durationMillis) {
as = new AnimationSet(true);
TranslateAnimation ta = new TranslateAnimation(fromX, toX, fromY,
toY);
ta.setFillAfter(true);
ta.setFillBefore(false);
ta.setDuration(durationMillis);
as.addAnimation(ta);
as.setFillAfter(true);
as.setFillBefore(false);
view.startAnimation(as);
}
今天在使用TranslateAnimation位移一个LinearLayout时,发现动画完成后又会自动回到初始的状态,设置了fillAfter也不太管用。
在网上搜了一圈,发现:
这种现象很正常,因为TranslateAnimation只负责实现位移动画效果,并不会真正的改变LinearLayout的位置,所以需要加一个AnimationListener ,在动画结束(onAnimationEnd() )后,通过设置LayoutParam里相关属性来改变LinearLayout位置才行。
原文:http://www.androidstar.cn/android不用xml文件,动态写animation注:animation并不会真正移动控件/
相关文章推荐
- android不用xml文件,动态写Animation,注:Animation并不会真正移动控件,需要调用onAnimationEnd
- 动态写Animation,注:Animation并不会真正移动控件,需要调用onAnimationEnd
- Android中,在onAnimationEnd方法中调用 viewgroup.removeview,报 nullpointerexception异常的解决方法
- Android中进入下一个Activity时在上一个Activity主动调用onDestroy()方法不会真正将上一个Activity从栈中删除
- Android什么时候只会调用onPause()而不会调用onStop()?
- Android什么时候只会调用onPause()而不会调用onStop()?
- 【Android】如何动态根据需要的用Java添加安卓控件——以ImageView为例~~
- Android 动态移动控件实现 推荐
- android onAnimationEnd移除view导致崩溃
- 2014-11-3Android学习------关于自定义视图View的时候需要调用onMeasure--------GIF动画实现
- 动态移动XML文件中的控件位置
- Android中进入下一个Activity时在上一个Activity主动调用onDestroy()方法不会真正将上一个Activity从栈中删除
- animation.setAnimationListener onAnimationEnd被调用两次更新
- Android输入法-输入框随着输入法移动,但是底部控件不会被顶上去
- 在onAnimationEnd方法中调用 viewgroup.removeview,报 nullpointerexception异常的解决方法
- Android中进入下一个Activity时在上一个Activity主动调用onDestroy()方法不会真正将上一个Activity从栈中删除
- 创建静态控件——静态控件是用来显示的。只要需要根据size移动其大小就好了,内部显示不用处理
- Android中动态添加控件需要注意的事情
- Android的Animation的onAnimationXXX/onAnimationXXX和Listener.onXXX回调函数调用顺序
- 用反射方法使用户控件动态调用父页面的方法