nineoldandroids是Jake Wharton的动画开源库,它的作用是实现一些复杂且绚丽的动画效果,我在做侧滑缩放效果时一直找不到该如何实现,最后用这个类才实现了缩放的效果。
首先,使用它需要导入相应的jar包,当然这是在exlipse里使用的情况下,如果是在AS里的话可以直接去library里下载,今天主要介绍的是nineoldandroids的一些属性。
nineoldandroids将Honeycomb
animation API 移植到了整个Android Version平台,使得ValueAnimator、ObjectAnimator等Honeycomb animation API 能不改一行代码,只修改import的包名就完全兼容到新的api,它里面有一个重要的类那就是viewHelper,可以通过他来设置周围环境以及动画的属性。
// 调用属性动画,设置TranslationX
ViewHelper.setTranslationX(myMenu, myMenuWidth * scale * 0.8f);
ViewHelper.setScaleX(myMenu, leftScale);
ViewHelper.setScaleY(myMenu, leftScale);
ViewHelper.setAlpha(myMenu, leftAlpha);
// 设置内容缩放的中心点
ViewHelper.setPivotX(myContent, 0);
ViewHelper.setPivotY(myContent, myContent.getHeight() / 2);
ViewHelper.setScaleX(myContent, rightScale);
ViewHelper.setScaleY(myContent, rightScale);
这个例子就是设置缩放的一个功能,可以实现侧滑然后内容项缩放,然后菜单项变大的效果