在Android中,可以使用Handler和Runnable来实现定时器的启动和停止。下面是一个示例代码:
首先,在Activity中定义一个Handler和Runnable对象以及一个计数器变量:
private Handler handler = new Handler();
private Runnable runnable;
private int count = 0;
然后,在Activity的onCreate方法中初始化runnable对象,并通过handler对象的postDelayed方法启动定时器:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
runnable = new Runnable() {
@Override
public void run() {
// 在这里执行定时任务的逻辑
Log.d("Timer", "Count: " + count);
count++;
handler.postDelayed(this, 1000); // 1秒钟后再次执行
}
};
handler.postDelayed(runnable, 1000); // 启动定时器,延迟1秒钟后执行
}
最后,在Activity的onDestroy方法中停止定时器:
@Override
protected void onDestroy() {
super.onDestroy();
handler.removeCallbacks(runnable); // 停止定时器
}
这样就实现了一个可启动和停止的定时器。在run方法中的逻辑代码中可以编写想要循环执行的任务,例如更新UI、发送网络请求等。