有关于烟花的新年祝福语篇1

1、if (mIsStopAnim) {。

2、如果有float获取比率值,从而计算出相应的坐标值,那么可能由于最终在转成Rect的坐标时,。

3、private Rect mSrc;。

4、if (mBitmap == null) return;。

5、super.onMeasure(widthMeasureSpec, heightMeasureSpec);。

6、animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {。

7、mSrc.right = mRollWidth;。

8、private static class RollView extends View {。

9、private int mRollWidth = 60;。

10、*/。ValueAnimator animator = ValueAnimator.ofFloat(0, 1);。

有关于烟花的新年祝福语篇5

1、//中间。canvas.drawBitmap(mBitmap, mSrc, mDst, null);。

2、/*。> 因float转int有一个精度损失的问题,所以在计算中强制加上了1px(代码中有);。

3、mRate = (float) animation.getAnimatedValue();。

4、mDst.left = getWidth() / 2 - dw / 2;。

5、新年了,项目中要作个动画,整体要求实现彩带乱飞,烟花冲天而起,烟花缩放,小鸡换图,小鸡飘移,横幅裁剪、展开等动画效果,全局大量使用了属性动画来实现。横幅的裁剪计算,捣腾了比较久的时间,初版采用属性动画计算float的一个比率值,来配合每一帧的裁剪绘制,如下代码:。

6、mSrc.left = mBitmap.getWidth() - mRollWidth;。

7、mSrc.right = mBitmap.getWidth();。

8、final float rate = mRate;。

9、而适配时,可能view的宽高比 drawable的宽高还小或大。

10、mDst.right = mDst.left + mRollWidth;。

有关于烟花的新年祝福语篇6

1、int sw = (int) ((mBitmap.getWidth() - mRollWidth * 2) * rate);。

2、mSrc.right = mSrc.left + sw;。

3、mSrc.bottom = mBitmap.getHeight();。

4、animator.setDuration(2000);。

5、private float mRate;。

6、public void stopAnim() {。

7、@RequiresApi(api = Build.VERSION_CODES.HONEYCOMB)。

8、//右边。animation.cancel();。

9、mSrc = new Rect();。

10、private void drawFromMiddleByFloatCompute(Canvas canvas) {。