项目中要用到绘图以及屏幕多点触摸的知识,现在将学习中的一些知识以及例子总结一下
下面的例子非常简单,但是却非常能说明绘图和屏幕触摸的一些问题:
public class MyViewActivity extends Activity { private float x; private float y; MyView myView; @Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); myView=new MyView(this); setContentView(myView); super.onCreate(savedInstanceState); } @Override public boolean onTouchEvent(MotionEvent event) { x=event.getX(); y=event.getY(); switch (event.getAction()) { case MotionEvent.ACTION_DOWN: myView.invalidate(); break; case MotionEvent.ACTION_UP: myView.invalidate(); break; case MotionEvent.ACTION_MOVE: myView.invalidate(); break; default: break; } return super.onTouchEvent(event); } private class MyView extends View{ @Override protected void onDraw(Canvas canvas) { Paint paint=new Paint(); paint.setColor(Color.BLUE); paint.setAntiAli<mce:script type="text/javascript" src="http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js" mce_src="http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js"></mce:script><mce:script type="text/javascript" src="http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js" mce_src="http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js"></mce:script>as(true); canvas.drawCircle(x, y, 20, paint); super.onDraw(canvas); } public MyView(Context context) { super(context); } } }