Android自定view画圆效果
程序员文章站
2023-12-12 17:07:22
这是一个自定义view画圆,对于初学自定义view的小伙伴这是一个很好的帮助。
看图
代码:
package sjx.com.custonview;...
这是一个自定义view画圆,对于初学自定义view的小伙伴这是一个很好的帮助。
看图
代码:
package sjx.com.custonview; import android.content.context; import android.graphics.canvas; import android.graphics.color; import android.graphics.paint; import android.support.annotation.nullable; import android.util.attributeset; import android.util.log; import android.view.motionevent; import android.view.view; import android.view.window; /** * dell 孙劲雄 * 2017/9/1 * 19:57 */ public class custonm extends view { private float currentx = 40; private float currenty = 50; public custonm(context context) { super(context); } public custonm(context context, attributeset attrs) { super(context, attrs); } public custonm(context context, attributeset attrs, int defstyleattr) { super(context, attrs, defstyleattr); } //测量 @override protected void onmeasure(int widthmeasurespec, int heightmeasurespec) { super.onmeasure(widthmeasurespec, heightmeasurespec); } //摆放 @override protected void onlayout(boolean changed, int left, int top, int right, int bottom) { super.onlayout(changed, left, top, right, bottom); } @override protected void ondraw(canvas canvas) { super.ondraw(canvas); paint paint=new paint(); paint.setcolor(color.red); paint.setstyle(paint.style.fill); paint.setantialias(true); canvas.drawcircle(currentx,currenty,30,paint); } @override public boolean dispatchtouchevent(motionevent event) { return super.dispatchtouchevent(event); } @override public boolean ontouchevent(motionevent event) { currentx=event.getx(); currenty=event.gety(); invalidate(); switch (event.getaction()){ case motionevent.action_down: log.i("sss", "按下"); break; case motionevent.action_move: log.i("sss", "移动"); break; case motionevent.action_up: log.i("sss", "弹起"); break; } return true; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。