我们知道有不少开源工程,能实现很多不错的效果。前几天,我看了一个效果,刚好项目中也用到了这个jar包。没事挖一挖 学一学(一说到挖一挖,那么问题来了,挖掘机技术到底哪家强 ),看看不错的效果怎么实现的呢?函数的具体意义有是什么呢?很多效果,我们不需要重新造轮子,只需要装配轮子,开车走起就可以了,你没有那么多时间造轮子,我们可以选择自己喜欢的轮子,开我们的兰博基尼,开我们的保时捷概念车,开起来!
先看一下效果吧!挖自开源项目中的(NineOldAndroids开源项目)
不废话。我们解释下相关函数。
private View header_logo;
private float moveDistanceY = 25;// logo初始移动距离为10
private float moveDistanceX = 25;// logo初始移动距离为10
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_moveDown :
moveDistanceY += 20;
ViewHelper.setTranslationY(header_logo, moveDistanceY);
break;
case R.id.btn_moveUp :
moveDistanceY -= 20;
ViewHelper.setTranslationY(header_logo, moveDistanceY);
break;
case R.id.btn_moveLeft :
moveDistanceX -= 20;
ViewHelper.setTranslationX(header_logo, moveDistanceX);
break;
case R.id.btn_moveRight :
moveDistanceX += 20;
ViewHelper.setTranslationX(header_logo, moveDistanceX);
break;
default :
break;
}
}
关于 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包