我想绘制一个箭头指向图像中的对象。我已经能够编写代码来绘制线条,但似乎无法找到绘制箭头的方法。我写的绘制可拖动线条的代码如下所示。我需要在ACTION_UP事件上绘制一个箭头到方向,其中线指向在android中绘制箭头头
if(event.getAction() ==MotionEvent.ACTION_DOWN) {
if (count==1){
x1 = event.getX();
y1 = event.getY();
System.out.println(count+"count of value a;skd");
Toast.makeText(getApplicationContext(), ""+(radius+count), Toast.LENGTH_LONG).show();
Log.i(TAG, "coordinate x1 : "+String.valueOf(x1)+" y1 : "+String.valueOf(y1));
}
}
else if(event.getAction() ==MotionEvent.ACTION_MOVE){
imageView.setImageBitmap(bmp2);
x2 = event.getX();
y2 = event.getY();
posX=(float)(x1+x2)/2;
posY=(float)(y1+y2)/2;
radius=(float) Math.sqrt((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2))/2;
onDraw();
Toast.makeText(getApplicationContext(), ""+radius, Toast.LENGTH_LONG).show();
}
嗨,任何人仍然需要帮助的。这是我怎样到底做到了 浮子H =(浮点)30.0;
float phi = (float) Math.atan2(y2 - y1, x2 - x1);
float angle1 = (float) (phi - Math.PI/6);
float angle2 = (float) (phi + Math.PI/6);
float x3 = (float) (x2 - h * Math.cos(angle1));
float x4 = (float) (x2 - h * Math.cos(angle2));
float y3 = (float) (y2 - h * Math.sin(angle1));
float y4 = (float) (y2 - h * Math.sin(angle2));
c.drawLine(x1, y1,x2,y2 ,pnt);
c.drawLine(x2, y2,x3,y3 ,pnt);
c.drawLine(x2, y2,x4,y4 ,pnt);
,我从计算器
Hi @ user2586488您可以在触发ACTION_UP事件而不是绘制箭头时附加图像。 –
是的,但图像的方向应该与Line相匹配。我无法使用相同的图像作为向上的指向线和向下的指向等。 – user2586488
是啊....您可以拥有一组图像,以便您可以设置根据象限的方向。 –