LoginButton
android 实现登录按钮动画效果
先上传一张效果图:
好的,再来看一下实现思路。
实现思路:
整个动画过程大致分为3步:
① 从矩形-->圆角矩形-->圆
②圆弧旋转病最终转至下巴位置
③眼睛上升
动画关键代码
第一步的动画绘制:
private void draw_oval_to_circle(Canvas canvas) {
rectf.left=actual_move_distance;
rectf.top=0;
rectf.right=width-actual_move_distance;
rectf.bottom=height;
//画圆角矩形
canvas.drawRoundRect(rectf,circleAngle,circleAngle,paint);
}
第二步的动画绘制:
private void draw_arc_to_smile(Canvas canvas){
arcRectf.left=width/2-height/4;
arcRectf.right=width/2+height/4;
arcRectf.top=height/4;
arcRectf.bottom=height*3/4;
canvas.drawArc(arcRectf,startAngle,180,false,smilePaint);
}
第三部的动画绘制:
private void draw_point_move_up(Canvas canvas){
intpointLeftX =width/2-height/4;
intpointRightX =width/2+height/4;
canvas.drawPoint(pointLeftX+10,height/2-point_move_up_distance,smilePaint);
canvas.drawPoint(pointRightX-10,height/2-point_move_up_distance,smilePaint);
}
最后附上Github地址。
欢迎点评。