Java 如何添加一个计时器,使线路刷新并在每2秒后显示?

Java 如何添加一个计时器,使线路刷新并在每2秒后显示?,java,android,timer,Java,Android,Timer,我正在制作一个应用程序来制作时钟的指针。也就是说,我在屏幕上画一条简单的线,希望它像时钟的指针一样旋转。我如何使用计时器来做到这一点?(这样线的位置就会刷新)。只有一个端点应该旋转,而另一个端点保持静止。在下面的代码中,我只在屏幕上画了一条线: DrawView.java: package LineRefresh.xyz.com; import java.util.Timer; import java.util.TimerTask; import android.content.Context

我正在制作一个应用程序来制作时钟的指针。也就是说,我在屏幕上画一条简单的线,希望它像时钟的指针一样旋转。我如何使用计时器来做到这一点?(这样线的位置就会刷新)。只有一个端点应该旋转,而另一个端点保持静止。在下面的代码中,我只在屏幕上画了一条线:

DrawView.java:

package LineRefresh.xyz.com;

import java.util.Timer;
import java.util.TimerTask;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class DrawView extends View {
Paint paint = new Paint();

public DrawView(Context context) {
    super(context);    
}

@Override
public void onDraw(final Canvas canvas) { 
 paint.setColor(Color.BLACK);
 canvas.drawLine(50, 200, 270, 200, paint);  


}
}


LineRefresh.java:

package LineRefresh.xyz.com;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;

public class LineRefresh extends Activity {
DrawView drawView;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    drawView = new DrawView(this);
    drawView.setBackgroundColor(Color.WHITE);
    setContentView(drawView);

}
}

试着这样做:

私有处理程序mHandler=新处理程序()

在OnCreate或任何要启动计时器的方法中,您可以使用:

mHandler.removeCallbacks(mUpdateTimeTask)//在添加新的处理程序之前,请确保删除任何处理程序
mHandler.postDelayed(MethodToDrawClockLine,1000)//它将在1秒后执行

完成后,请记住移除处理程序。 mHandler.removeCallbacks(mUpdateTimeTask)

应该是这样

private Runnable MethodToDrawClockLine = new Runnable() 
{  
    public void run() 
    {  
        //execute here your drawing routine.
        // after drawing set the timer for another x period of time
        mHandler.postDelayed(MethodToDrawClockLine, 1000); //it'll re-execute it after 1sec.  
    }  
}