簡體   English   中英

我如何以一秒鍾的間隔啟動Java中的計時器?

[英]How do i start a timer in java with one second interval?

一旦我以一秒鍾的間隔啟動程序,計時器應不間斷工作。 在我的MainActivity頂部,我添加了:

import java.util.Timer;

然后在MainActivity類中:

public class MainActivity extends ActionBarActivity

我補充說:

private Timer timer = new Timer();

現在我有onCreate方法:

@Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        addListenerOnButton();
        currentActivity = this;
        initTTS();
    }

一旦我以一秒鍾的間隔啟動程序,如何使計時器開始工作?

首先,您需要導入:

import java.util.Timer;
import java.util.TimerTask;

之后,您需要像這樣設置計時器:

//Declare the timer
    Timer myTimer = new Timer();
    //Set the schedule function and rate
    myTimer.scheduleAtFixedRate(new TimerTask() {
                                    @Override
                                    public void run() {
                                        //Called at every 1000 milliseconds (1 second)
                                        Log.i("MainActivity", "Repeated task");
                                    }
                                },
            //set the amount of time in milliseconds before first execution
            0,
            //Set the amount of time between each execution (in milliseconds)
            1000);

將間隔設置為1000,因為計時器中的間隔基於毫秒,因此1000毫秒= 1秒。

嘗試在屬性選項卡中搜索屬性“ Interval”,因為我使用的是netbeans,並且側面有間隔,並且將命令放置在Timer_Tick事件上,以確保每次間隔發生時即每秒執行一次命令

您可以使用以下調度方法之一啟動計時器:

timer.schedule(new TimerTask() {
    @Override
    public void run() {
        //do your stuff here...
    }
}, 0, 1000);

這將以0毫秒的延遲啟動計時器,並在1000毫秒后重復該計時器。

您應該至少在這里閱讀javadoc的標題: java.util.Timer

我對Android平台了解不多,但是使用線程時必須謹慎。 在這里閱讀有關內容: https : //developer.android.com/guide/components/processes-and-threads.html#Threads

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM