<span style="font-size:14px;"> private void flushState() {
int distance = 0;
if(!isMenuShow){
// scrollTo(0,0);
// distance = 0-getScrollX();
distance=menu.getWidth();
}else{
// scrollTo(-menu.getWidth(),0);
// distance = -menu.getWidth()-getScrollX();
distance=-menu.getWidth();
}
//参数(启始x,启始y,x位移,y位移)
scroller.startScroll(getScrollX(), 0, distance, 0);
invalidate();
}
//invalidate(); 会调用computeScroll() 中间会有时间间隔 来让移动动画执行
@Override
public void computeScroll() {
//Scroller工具的判断移动过程是否结束
if(scroller.computeScrollOffset()){
//视图移动到(x,y)
scrollTo(scroller.getCurrX(),0);
invalidate();
}
}
private Scroller scroller ;
public void changeState() {
isMenuShow = !isMenuShow;
flushState();
}
</span>
平移动画
最新推荐文章于 2016-04-11 15:26:54 发布