Android 可运行的,处理程序,线程
我正在制作一个秒表应用程序,我检查了代码Android 可运行的,处理程序,线程,android,Android,我正在制作一个秒表应用程序,我检查了代码 private void runtime(){ final Handler handler = new Handler(); handler.post(new Runnable() { @Override public void run() { final TextView timeView = (TextView) findViewByI
private void runtime(){
final Handler handler = new Handler();
handler.post(new Runnable() {
@Override
public void run() {
final TextView timeView = (TextView) findViewById(R.id.textView);
int hours = sec/3600;
int min = sec/60;
int secs = sec%60;
String time = String.format("%d:%02d:%02d",hours,min,secs);
timeView.setText(time);
if(running){
sec++;
}
handler.postDelayed(this,1000);
}
});
我对runnable、handler和thread一无所知,你能描述一下这些术语吗
以及为什么使用它们请参考android文档,以获得清晰的概念 这里发生的事情是,您正在创建一个“处理程序”来运行“Runnable”中的代码,该代码包含一个
postDelayed()
方法,每1秒重复一次相同的代码,直到您取消该Runnable
通常,处理程序用于在“单个线程”中执行代码块,使用线程的消息队列执行的代码块是“可运行的”,可运行接口有一个保存代码的run()
方法
postdayed()
方法是Handler类中的一种方法,我们使用它来调度消息或调度任何代码的执行,在这种情况下,每1秒运行一次上述代码
有关更多信息,请参阅此请不要在此处提出类似问题。您可以查看此。