仿支付寶支付成功動畫

2021-07-07 06:11:56 字數 2628 閱讀 2692

與支付寶支付成功後類似的乙個動畫,本人小白乙隻大神請繞過,畫的菜大家見諒

直接將view拷貝進專案中即可,動畫開關為loadcircle和stop方法,提供了監聽介面ondonecircleanimlistner以便於和外部邏輯銜接

import android.animation.animator;

import android.animation.animatorlisteneradapter;

import android.animation.animatorset;

import android.animation.valueanimator;

import android.annotation.suppresslint;

import android.content.context;

import android.graphics.canvas;

import android.graphics.color;

import android.graphics.paint;

import android.graphics.rectf;

import android.util.attributeset;

import android.util.log;

import android.view.view;

@suppresslint("newapi") public class loadingcircleview extends view

public loadingcircleview(context context, attributeset attrs)

public loadingcircleview(context context, attributeset attrs, int defstyleattr)

@override

protected void ondraw(canvas canvas)

@override

protected void onmeasure(int widthmeasurespec, int heightmeasurespec)

private void lodingcirclemeasure()

public void loadcircle()

initdegreeandoffset();

lodingcirclemeasure();

mcircleanim = valueanimator.ofint(0, 360);

mlineleftanimator = valueanimator.offloat(0, mradius / 2f);

mlinerightanimator = valueanimator.offloat(0, mradius / 2f);

log.i(tag, "mradius" + mradius);

mcircleanim.setduration(700);

mlineleftanimator.setduration(350);

mlinerightanimator.setduration(350);

mcircleanim.addupdatelistener(new valueanimator.animatorupdatelistener()

});mlineleftanimator.addupdatelistener(new valueanimator.animatorupdatelistener()

});mlinerightanimator.addupdatelistener(new valueanimator.animatorupdatelistener()

});manimatorset.play(mcircleanim).before(mlineleftanimator);

manimatorset.play(mlinerightanimator).after(mlineleftanimator);

manimatorset.addlistener(new animatorlisteneradapter()

}}, 800);

}});

manimatorset.start();

}public void stop()

if (null != mlineleftanimator)

if (null != mlinerightanimator)

clearanimation();

}public boolean isstarted()

return false;

}public void initdegreeandoffset()

public boolean iscanhide()

public void setcanhide(boolean mcanhide)

private ondonecircleanimlistner mendlistner;

public void addcircleanimatorendlistner(ondonecircleanimlistner endlistenr)

}public inte***ce ondonecircleanimlistner

public void removecircleanimatorendlistner()

}

PathMeasure 仿支付寶支付動畫

在 android 自定義 view 中,path 可能用的比較多,pathmeasure 可能用的比較少,就我而言,以前也沒有使用過 pathmeasure 這個 api,看到別人用 pathmeasure 和 valueanimator 結合在一起完成了很好的動畫效果,於是我也學習下 pathm...

仿支付寶輸入支付密碼2(帶動畫)

先看看效果圖把 主介面只有這麼簡單,就不多在去介紹了 button button findviewbyid r.id.home button background view findviewbyid r.id.home background button.setonclicklistener new...

iOS 仿支付寶密碼支付

位址如下 問題二 怎麼做到輸入密碼的時候黑點顯示或消失一致 void passwordfielddidchange uitextfield field if passwordfield.text length 6 else add the actions.alertcontroller addact...