支付宝咻一咻怎么用支付宝咻一咻怎么用 Android帮你实现咻一咻帮你实现咻一咻
Android帮你实现咻一咻,这篇文章主要为大家介绍了支付宝咻一咻的几种思路,感兴趣的朋友可以参考一下
对于之前最火的无外乎集五福了,而五福除了加十个好友获得外,最直接的途径就是支付宝的咻一咻了。那么咻一咻具体有哪
些实现方式呢?下面我们将一一介绍这几种思路的实现过程。
1.自定义自定义View实现咻一咻实现咻一咻
那么这种实现方法需要掌握Canvas以及Paint几乎所有的方法。其对程序员的专业知识要求极高。
用该种方式实现的优点有:
㈠㈠这种是最复杂的实现方法,但其兼容性最高,其支持这种是最复杂的实现方法,但其兼容性最高,其支持android的所有设备。的所有设备。
㈡㈡其对内存要求不大,几乎不占用任何内存。其对内存要求不大,几乎不占用任何内存。
下面我们来看看是怎样实现其效果的:
public class XiuYiXiuView extends View {
/***
* 中心图片画笔
*/
private Paint paint;
/***
* 水波圆圈画笔
*/
private Paint circlePaint;
/***
* 用bitmap创建画布
*/
private Bitmap bitmap;
/***
* 中心图片
*/
private Bitmap imageBit;
/***
* 画布
*/
private Canvas canvas;
/***
* 屏幕的宽
*/
private int screenWidth;
/***
* 屏幕的高
*/
private int screenHeight;
/***
* 图片右上角坐标
*/
private Point pointLeftTop;
/***
* 图片右下角坐标
*/
private Point pointRightBottom;
/***
* 记录圆圈
*/
private List<LYJCircle> lyjCircleList;
/***
* 标记是否按下按钮,并且源泉是否扩散消失
*/
private boolean isSpread=false;
/***
* 默认没有按动时候的圆圈
*/
private LYJCircle defaultCircle;
public XiuYiXiuView(Context context, AttributeSet attrs) {
super(context, attrs);
this.lyjCircleList=new ArrayList<>();
screenWidth=LYJUtils.getScreenWidth((Activity) context);
screenHeight=LYJUtils.getScreenHeight((Activity) context);
bitmap = Bitmap.createBitmap(screenWidth, screenHeight, Bitmap.Config.ARGB_8888); // 设置位图的宽高
canvas = new Canvas();
canvas.setBitmap(bitmap);
paint=new Paint(Paint.DITHER_FLAG);
paint.setAntiAlias(true);
circlePaint=new Paint(Paint.DITHER_FLAG);