Dizent
2017-04-18 11:39
//退出进度值 private float mExitProgress = 0 ; //每次递增的进度值 private float mExitIncrement = 16f/280; //进入动画查值器,用于实现从慢到快的效果 private Interpolator mExitInterpolator = new AccelerateInterpolator(2); //动画回调 private Runnable mExitRunnable = new Runnable() { @Override public void run() { //进入时,首先判断进入动画是否具有 if(!mEnterDone) return; mExitProgress = mExitProgress+mExitIncrement; // TODO Auto-generated method stub if(mExitProgress>1){ onExitProgress(1); onExitDone(); return; } float realProgress = mExitInterpolator.getInterpolation(mExitProgress); onExitProgress(realProgress); //延迟16毫秒,保证界面刷新频率接近60FPS scheduleSelf(this, SystemClock.uptimeMillis()+16); } };
两个原因:
第一:mEnterDone一直为false;
第二:时间监听时没有坚挺到手指抬起或者手指取消。
带您完成神秘的涟漪按钮效果-提高篇
7039 学习 · 6 问题
相似问题