package com.example.timerrefurbish;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView timeShow;
private final ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor();
private ScheduledFuture<?> tickFuture,tickFuture2;
private Thread thread,threadMs;
private TextView msTime;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
timeShow = (TextView) findViewById(R.id.time_textview);
msTime = (TextView) findViewById(R.id.time_textview_ms);
thread = new Thread(new Runnable() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
SimpleDateFormat dataformat = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss:aa");
String format = dataformat.format(new Date());
timeShow.setText(format);
}
});
}
});
threadMs = new Thread(new Runnable() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
msTime.setText("姣"+System.currentTimeMillis());
}
});
}
});
}
@Override
protected void onResume() {
super.onResume();
this.tickFuture = this.scheduler.scheduleAtFixedRate(thread, 1000L, 1000L, TimeUnit.MILLISECONDS);
this.tickFuture2 = this.scheduler.scheduleAtFixedRate(threadMs, 1000L, 1L, TimeUnit.MILLISECONDS);
}
@Override
protected void onPause() {
super.onPause();
this.tickFuture.cancel(true);
this.tickFuture2.cancel(true);
this.tickFuture2=null;
this.tickFuture= null;
}
}
Android倒计时案例
最新推荐文章于 2025-05-13 16:43:26 发布