Android中通过ViewHelper.setTranslationY实现View移动控制(NineOldAndroids开源项目)

 我们知道有不少开源工程,能实现很多不错的效果。前几天,我看了一个效果,刚好项目中也用到了这个jar包。没事挖一挖 学一学(一说到挖一挖,那么问题来了,挖掘机技术到底哪家强大笑 ),看看不错的效果怎么实现的呢?函数的具体意义有是什么呢?很多效果,我们不需要重新造轮子,只需要装配轮子,开车走起就可以了,你没有那么多时间造轮子,我们可以选择自己喜欢的轮子,开我们的兰博基尼,开我们的保时捷概念车,开起来

  先看一下效果吧!挖自开源项目中的(NineOldAndroids开源项目

   

不废话。我们解释下相关函数。

[java]  view plain  copy
 print ?
  1. private View header_logo;  
  2. private float moveDistanceY = 25;// logo初始移动距离为10  
  3. private float moveDistanceX = 25;// logo初始移动距离为10  
  4.   
  5. Override  
  6. public void onClick(View v) {  
  7.     switch (v.getId()) {  
  8.         case R.id.btn_moveDown :  
  9.             moveDistanceY += 20;  
  10.             ViewHelper.setTranslationY(header_logo, moveDistanceY);  
  11.             break;  
  12.   
  13.         case R.id.btn_moveUp :  
  14.             moveDistanceY -= 20;  
  15.             ViewHelper.setTranslationY(header_logo, moveDistanceY);  
  16.             break;  
  17.   
  18.         case R.id.btn_moveLeft :  
  19.             moveDistanceX -= 20;  
  20.             ViewHelper.setTranslationX(header_logo, moveDistanceX);  
  21.             break;  
  22.   
  23.         case R.id.btn_moveRight :  
  24.             moveDistanceX += 20;  
  25.             ViewHelper.setTranslationX(header_logo, moveDistanceX);  
  26.             break;  
  27.   
  28.         default :  
  29.             break;  
  30.     }  
  31. }  


   关于 ViewHelper.setTranslationY(view,float)函数的解释。这里的view 是您要移动哪个View 就是哪个东西你要将他在界面上进行活动呢? float是指你移动的距离 ,(假定参考坐标 最开始的位置中心位置为0)。那么ViewHelper.setTranslationY(view,100)就是把view向下(比最原始的位置)移动100,那么120那 130那 140 150呢

就是比最原始的位置多10、多20、多30、多40。。。。所以ViewHelper.setTranslationX 还是ViewHelper.setTranslationY都可以实现了。还是上源代码吧。要不你们看不到效果是不是要骂我了。嘎嘎。


要用到ViewHelper,需要引用jar包。开源工程的jar包

     本工程源码下载地址 :猛击这里,以后保证 每周必须更新一篇最新的技术文章,每天要努力 挖掘技术点(不是开挖掘机,开挖掘机还是去蓝翔开去)。要不,你们以为我这么长时间都不出气,是不是挂了?还是被车撞了,趟医院起不来了。。。。。大笑