您的位置:首页 > 其它

一开始实现的时候,不知道贝塞尔曲线,自己去思考其他方法实现了。怎么想到用到贝塞尔曲线?以后碰到类似问题,应该先在网上找找都有什么方法实现。

2017-08-03 11:36 931 查看
粘性效果

 设想,就是根据拖动点,实现区域 开始变形。 根据滑动距离。颜色区域,长度宽度的变化。

 

自定义View

构造函数中添加初始化方法init(){

Paint p = new Paint(Paint.ANTI_ALIAS_FLAG);

//设置抗锯齿

p.setAntiAlias(true);

//设置防抖动

p.setDither(true);

//设置为填充方式

p.setStyle(Paint.Style.FILL);

p.setColor(0xFF000000);

mCirclePaint = p;

}

覆写

onDraw(Canvas canvas){

float x =getWidth()>>1;//向右移了一位,相当于除以2.  获得中心位置。

Float y = getHeight()>>1;

canvas.drawCircle(x,y,mCircleRadius,mCirclePaint);

}

 

在拖动的时候, 调用方法requestLayout() 实现请求重新绘制。

 

OnMeasure(int widthMeasureSpec,intheightMeasureSpec){

 Super.onMeasure(widthMeasureSpec,heightMeasureSpec);

Int widthMode =MeasureSpec.getMode(widthMeasureSpec);

Int width =MeasureSpec.getSize(widthMeasureSpec);

 

Int heightMode =MeasureSpec.getMode(heightMeasureSpec);

Int height = MeasureSpec.getSize(heightMeasureSpec);

}

 

Spec 意思 是说明书

Mode 是模式,方式

 

一开始实现的时候,不知道贝塞尔曲线,自己去思考其他方法实现了。怎么想到用到贝塞尔曲线?以后碰到类似问题,应该先在网上找找都有什么方法实现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐