首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

animation为什么不起作用

2013-07-16 
animation为啥不起作用//...获取按钮 findViewById.......btn.getLocationOnScreen(position)int posX

animation为啥不起作用


//...获取按钮 findViewById.......
   btn.getLocationOnScreen(position);    
          int posX = position[0];
          int posY = position[1];;
  //Animation translateAnimation = new TranslateAnimation(Animation.ABSOLUTE, 300,Animation.ABSOLUTE ,660, Animation.ABSOLUTE, 300, Animation.ABSOLUTE, 730);
  Animation translateAnimation = new TranslateAnimation(posX, 500, posY, 700);
  translateAnimation.setDuration(2000);
  AnimationSet anSet = new AnimationSet(false);
  anSet.addAnimation(translateAnimation);
  btn.startAnimation(anSet); 

linearlayout布局
里面一堆按钮,点最后一个按钮的时候 让最后一个按钮执行动画.
执行的时候 就是按钮没了 过两秒又出现了 根本没动画 ....这个动画跟布局有关系吗 我上面还有好多按钮 是不是不行啊 
[解决办法]
你的整个代码逻辑是没有问题的。
我估计是 Animation translateAnimation = new TranslateAnimation(posX, 500, posY, 700);代码中你的posX,posY有问题,这里传的值是在该控件自身x,y的基础上去加的值。比如你的控件目前位置是(100,300),而你传的是(200,200),那么动画起始位置就是300,500。
所以你想从原位置开始动画  传(0 ,0)就可以了,而(500,700)作为全局坐标的话,应该也要减去你自身控件的位置距离

热点排行