本文实例为大家分享了Android实现直播点赞效果的具体代码,供大家参考,具体内容如下
创新互联建站主要从事成都做网站、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务陇县,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575效果展示
原理分析
点赞效果最主要的难点和原理在于贝塞尔曲线动画的生成,我们通过图片主要讲解贝塞尔曲线动画
1、需要找到贝塞尔曲线的四个点
2、通过三级贝塞尔曲线的公式计算,获取贝塞尔曲线的轨迹路径点
3、通过设置点赞图片X,Y坐标,从而形成点赞的效果
实现步骤
1、初始化变量
//1、继承RelativeLayout public class ChristmasView extends RelativeLayout implements View.OnClickListener { private Context context; //2、准备几张点赞图片 private int[] christmas_drawable = {R.drawable.christmas01, R.drawable.christmas02, R.drawable.christmas03 , R.drawable.christmas04, R.drawable.christmas05, R.drawable.christmas06}; //随机数种子 private Random random = new Random(); //View的宽高 private int width, height; //图片的宽高 private int drawableWidth, drawableHeight; public ChristmasView(Context context) { this(context, null); } public ChristmasView(Context context, AttributeSet attrs) { this(context, attrs, 0); } public ChristmasView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); this.context = context; //3、设置点击事件 setOnClickListener(this); //4、获取点赞图片的宽高 Drawable drawable = ContextCompat.getDrawable(context, R.drawable.christmas01); drawableWidth = drawable.getIntrinsicWidth(); drawableHeight = drawable.getIntrinsicHeight(); } } @Override public void onClick(View v) { //5、点击增加点赞图片 addChristmas(context); }