您的位置:首页 > 移动开发 > Android开发

AnimCheckBox按钮点击动画效果《IT蓝豹》

2015-10-21 00:00 531 查看
摘要: AnimCheckBox按钮点击动画效果

AnimCheckBox按钮点击动画效果

AnimCheckBox按钮点击动画效果,点击选中后勾选框选择效果,很不错的动画功能。
项目来源:https://github.com/lguipeng/AnimCheckBox
本项目主要介绍:
本项目主要自定义AnimCheckBox 集成View,提供选择的监听接口OnCheckedChangeListener
主要由drawCircle()方法和drawHook(Canvas canvas);
private void drawCircle(Canvas canvas){
initDrawStrokeCirclePaint();
canvas.drawArc(mRectF, 202, mSweepAngle, false, mPaint);
initDrawAlphaStrokeCirclePaint();
canvas.drawArc(mRectF, 202, mSweepAngle - 360, false, mPaint);
initDrawInnerCirclePaint();
canvas.drawArc(mInnerRectF, 0, 360, false, mPaint);
}
private void drawHook(Canvas canvas){
if (mHookOffset == 0)
return;
initDrawHookPaint();
mPath.reset();
float offset;
if (mHookOffset <= (2 * size/3 - mHookStartY - mBaseLeftHookOffset)){
mPath.moveTo(mBaseLeftHookOffset, mBaseLeftHookOffset + mHookStartY);
mPath.lineTo(mBaseLeftHookOffset + mHookOffset, mBaseLeftHookOffset + mHookStartY + mHookOffset);
}else if (mHookOffset <= mHookSize){
mPath.moveTo(mBaseLeftHookOffset, mBaseLeftHookOffset + mHookStartY);
mPath.lineTo(2 * size / 3 - mHookStartY, 2 * size / 3);
mPath.lineTo(mHookOffset + mBaseLeftHookOffset,
2 * size/3 - (mHookOffset - (2 * size/3 - mHookStartY - mBaseLeftHookOffset)));
}else {
offset = mHookOffset - mHookSize;
mPath.moveTo(mBaseLeftHookOffset + offset, mBaseLeftHookOffset + mHookStartY + offset);
mPath.lineTo(2 * size / 3 - mHookStartY, 2 * size / 3);
mPath.lineTo(mHookSize + mBaseLeftHookOffset + offset,
2 * size/3 - (mHookSize - (2 * size/3 - mHookStartY - mBaseLeftHookOffset) + offset));
}
canvas.drawPath(mPath, mPaint);
}

运行效果:



相关代码

AnimCheckBox按钮点击动画效果

android市面主流侧滑框架

PercentageCircle 自定义圆环效果

EmojiChat聊天页面实现,支持发送失败重发

CircularCounter 双层原形进度条效果

android listview中item通过viewpager实现

各种android弹出dialog效果以及各种dialog样式

KJMusic完整音乐项目

AndroidTagGroup实现云标签效果

BlurZoomGallery一个完美下拉进入大图模式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息