6
拉我用手指油漆画线字符,而到目前为止,我想出了下面的代码:如何识别在画布上
case MotionEvent.ACTION_MOVE:
//return if touch is in this area of canvas
if (x<=430 || y<=80 || y>=490) return true;
//draw path using x and y co-ordinates
mPath.quadTo(previousPoint.x, previousPoint.y, (x+previousPoint.x)/2,(y+previousPoint.y)/2);
canvas.drawPath(mPath, paint);
previousPoint.x = x;
previousPoint.y = y;
//invalidate canvas on move
imageView.invalidate();
break;
case MotionEvent.ACTION_UP:
Xend=x;
Yend=y;
//validate that is it true?
if((Xstart>=780 && Xstart<=830) && (Xend>=780 && Xend<=830) && (Ystart>=10 && Ystart<=200) && Yend<=800 && Yend>=300){
//show toast if correct
Toast.makeText(getBaseContext(), "Correct", Toast.LENGTH_SHORT).show();
}else{
//show toast with XY co-ordinates that your attempt is wrong
Toast.makeText(getBaseContext(), "Wrong attempt\n Xstart: "+Xstart+"\n Xend:"+Xend+"\n Ystart: "+Ystart+"\nYend:"+Yend, Toast.LENGTH_SHORT).show();
}
imageView.invalidate();
break;
但不幸的是,上面的代码不符合我的要求。我想创建按字母顺序排列的工作表,用户通过触摸进行操作。我想知道他在哪里开始,他在哪里移动,他在哪里结束,以识别他在画布上绘制的内容,我知道在哪里获得接触点,但问题是如何识别画布上绘制的内容?想要在Playstore上识别这样的VisionObjects应用程序。
如果您对android中的某些内容有疑问,请首先尝试在apis演示中查找示例应用程序...这是一个很好的开始。这里有一个非常好的例子来处理Android中的触摸。这是路径.. \ android-sdk-windows \ samples \ android-10 \ ApiDemos \ src \ com \ example \ android \ apis \ graphics \ FingerPaint.java – karn
上面的代码是什么意思? ?),如果它与你的要求无关?我也有理解实际问题的问题:你只是想跟踪触摸动作吗?如用户触摸屏幕(开始),将他的手指向左移动5cm(移动),然后我们走(结束)? – AgentKnopf
thanx回复guyz。 – Hamad