我已经阅读了很多关于我的问题的帖子,但我还没有找到解决方案。我要疯了!
我在主类中使用以下代码来获取屏幕上的脉冲:
public boolean onTouchEvent(MotionEvent event) {
x = (int) event.getX();
y = (int) event.getY();
case MotionEvent.ACTION_MOVE:
view.draw(canvas);
view.invalidate();
break;
}
观点是:
DrawView view;
而 DrawView 是一个内部类:
public class DrawView extends LinearLayout
在 DrawView 类中,我有以下两种方法来画线:
public void draw(Canvas canvas) {
}
@Override
public void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);
canvas.drawLine((int) 0,(int) 0,(int) x,(int) y, paint);
}
我的问题是如何在不同屏幕密度的屏幕上正确绘制线条。我试过:
float d = this.getResources().getDisplayMetrics().scaledDensity;
但我仍然无法正确绘制线条。
感谢您的关注!