相关疑难解决方法(0)

暂停计时器,然后继续

请参阅@Yuri从此处发布的代码.如何在一定次数后停止计时器 .如果我想因某些条件而停止它,然后再重新启动它.我该怎么做呢?

    private final static int DELAY = 10000;
    private final Handler handler = new Handler();
    private final Timer timer = new Timer();
    private final TimerTask task = new TimerTask() {
        private int counter = 0;
        public void run() {
            handler.post(new Runnable() {
                public void run() {
                    Toast.makeText(MainActivity.this, "test", Toast.LENGTH_SHORT).show();
                }
            });
            if(++counter == 4) {
                timer.cancel();
            }

    //do some stuff in my app
   //restart the timer again

        }
    };

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        timer.schedule(task, …
Run Code Online (Sandbox Code Playgroud)

java android timer

16
推荐指数
2
解决办法
6万
查看次数

时间不会在Applet中重新绘制

我有一个小问题,但我不知道要解决它.我创建了简单的Applet,其中应该是简单的数字时钟.我正确地创建了所有方法,但重绘方法不会重新绘制我的applet.你能检查我的代码并说出错误的地方吗?谢谢.

public class DigitalClock extends JApplet implements Runnable {

private Thread timeThread;
Date date = new Date();

public void start() {
    timeThread = new Thread(this, "Clock");
    timeThread.start();
}

@Override
public void stop() {
    if (timeThread == null) {
        return;
    }
    timeThread = null;
}

@Override
public void run() {
    while (timeThread != null) {
        repaint();
        try {
            timeThread.sleep(1000);
        } catch (InterruptedException e) {
        }
    }
}

@Override
public void paint(Graphics g) {
    date.setTime(System.currentTimeMillis());
    g.drawString(date.toString(), 50, 95);
}
}
Run Code Online (Sandbox Code Playgroud)

java time applet date

0
推荐指数
1
解决办法
775
查看次数

标签 统计

java ×2

android ×1

applet ×1

date ×1

time ×1

timer ×1