TranslateAnimation动画结束后控件移动位置

原创 2015年11月19日 16:16:15
使用TranslateAnimation并不会让控件的位置真正变化,只是视觉效果。
使用setFillBefore,setFillAfter控制动画结束时是否停留在第一帧/最后一帧。

使用动画效果,点击按钮btn,控件ll_all上下平移height并最终移到该位置。 注意,这里ll_all控件是放在Framelayout中的。
<pre class="java" name="code">TranslateAnimation ta = new Trandlateanimation(0,0,0,height);// 原来X坐标不动,Y坐标从0处平移height。

ta.setDuration(500);动画持续0.5秒


ta.setAnimationListener(new AnimationListener() {//动画开始/重复/结束的监听事件
   @Override
   public void onAnimationStart(Animation animation) {
    // TODO Auto-generated method stub


   @Override
   public void onAnimationRepeat(Animation animation) {
    // TODO Auto-generated method stub
   }


   @Override
   public void onAnimationEnd(Animation animation) {
    // TODO Auto-generated method stub
    
    btn.clearAnimation();
	FrameLayout.LayoutParams params = (FrameLayout.LayoutParams) ll_all.getLayoutParams();
    params.setMargins(ll_all.getLeft(), ll_all.getTop() + height,
      0, 0);// 改变位置,这里是左右不变,上下平移height高度
    ll_all.setLayoutParams(params);
   }
  });
btn.startAnimation(ta);



还可以使用view.Gone,view.VISIABLE来控制控件的位置,参考移动pad项目,设置图片为GONE/VISIBLE时,两个按钮自动就变换到指定位置了.

TranslateAnimation动画结束后的位置问题(已解决)

http://www.eoeandroid.com/thread-63857-1-1.html TranslateAnimation动画结束后的位置问题(已解决) hili...
  • iloveaman
  • iloveaman
  • 2014年02月07日 16:06
  • 1611

android中关于位移动画TranslateAnimation开始和结束时闪动问题的记录

大家都知道,android下动画效果如果想在动画结束的时候就停留在最后一帧画面上,则可以使用 Animation的setFillAfter(true)来设置一下。但是在实际应用中我们往往会在动画开始或...
  • biaobiao1217
  • biaobiao1217
  • 2016年05月14日 16:09
  • 5459

[Android UI界面] TranslateAnimation动画结束后的位置问题

[原文]http://www.eoeandroid.com/thread-63857-1-1.html 我正在做一个效果:拖动一个view使之移动,松开后view会移动到固定的位置。 问题...
  • zkwsr
  • zkwsr
  • 2015年02月03日 21:11
  • 3615

Android动画开始位置和结束位置不一样问题

前段时间做个Camera手动触屏对焦的功能,FocusArea和MeteringArea设置为触屏位置,同时需要在该位置播放一个缩放动画ScaleAnimation。 缩放动画是通过ImageVie...
  • xu20082100226
  • xu20082100226
  • 2017年06月03日 17:57
  • 276

安卓动画——让控件停留在动画结束的位置

private void showReleaseAnimation(final View view,float y){ TranslateAnimation translateAnimatio...
  • feiyu521808123
  • feiyu521808123
  • 2016年07月26日 15:20
  • 969

从一个居中方法说起 —— 谈 translate 与 相对、绝对定位

方法介绍 垂直水平居中是日常前端开发当中一个常见的需求,在支持 CSS3 属性的现代浏览器当中,有一个利用 CSS3 属性的垂直水平居中方法: .center { po...
  • zhcscs
  • zhcscs
  • 2015年07月07日 17:22
  • 1835

TranslateAnimation从上往下平移动画

TranslateAnimation从上往下平移动画
  • bob_Xing_Yang
  • bob_Xing_Yang
  • 2016年04月08日 15:22
  • 5101

android动画结束后停在结束位置

android动画结束后停在结束位置
  • wen0006
  • wen0006
  • 2011年05月13日 22:06
  • 10110

Android 之 TranslateAnimation类:位移动画类

Android中提供了4中动画: AlphaAnimation 透明度动画 ScaleAnimation 缩放动画 TranslateAnimation 位移动画 Rot...
  • u014371093
  • u014371093
  • 2015年03月14日 16:45
  • 10039

TranslateAnimation详解

TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta); 从(fromXDe...
  • anlidengshiwei
  • anlidengshiwei
  • 2015年11月09日 10:19
  • 4621
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TranslateAnimation动画结束后控件移动位置
举报原因:
原因补充:

(最多只允许输入30个字)