我实现了一个带有StepCounter
传感器和一个变量的类,该变量每步增长20。因此,对于每个步骤,我都希望从某个起点(离起点几毫米)处绘制一条线/路径。因此,对于20步来说,这条线比10步要远。
我创建了一个实现CanvasView
的类,并尝试将变量从我的SensorClass
传递给它,但是它不会为每一步画线,它将画出它仅一次用于变量dir(0)的主初始化。
MainActivity
类
if (sensorEvent.sensor.getType() == Sensor.TYPE_STEP_COUNTER)
if (running) {
tv_steps.setText(String.valueOf(stepct++));
dir = dir + 20;
}
public float getDir(){
return dir;
}
这里是应该在每次检测到脚步时画线的另一个类
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Path mPath = new Path();
mPath.moveTo(startX, startY);
mPath.lineTo(startX, 1700 - mainActivity.getDir());
canvas.drawPath(mPath, mPaint);
}
每次目录更改时如何重复?我应该尝试drawLine
吗?有人会使用另一个类来提供另一个完全不同的解决方案吗?