與支付寶支付成功後類似的乙個動畫,本人小白乙隻大神請繞過,畫的菜大家見諒
直接將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...