| 本帖最后由 liu 于 2019-1-25 17:17 编辑 
 
  
 Android新手开发之旅目录
 
 
  
 
 用法:
 
 
 [Java] 纯文本查看 复制代码  Timer timer = new Timer();
    TimerTask task = new TimerTask() {
        @Override
        public void run() {
          
        }
    };然后开启定时器
 
 
 
 [Java] 纯文本查看 复制代码  //第一个参数 传入 Timer对象   第二个参数:几秒后开始执行定时器  第三个参数:每次执行时间的间隔
        timer.schedule(task, 3000, 1000);
 用完记得关闭
 
 
 
 [Java] 纯文本查看 复制代码 task.cancel();
 
 
 
 示例代码:
 
 
 activity_main.xml:
 
 [XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center">
    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="@android:color/black"
        android:textSize="18sp" />
</LinearLayout>
 MainActivity:
 
 [Java] 纯文本查看 复制代码 import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import java.util.Timer;
import java.util.TimerTask;
public class MainActivity extends AppCompatActivity {
    private Timer timer;
    private TextView tv;
    private int i = 0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv = (TextView) findViewById(R.id.tv);
        timer = new Timer();
        //第一个参数 传入 Timer对象   第二个参数:几秒后开始执行定时器  第三个参数:每次执行时间的间隔
        timer.schedule(task, 3000, 1000);
    }
    Handler handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            if (msg.what == 1) {
                i++;
                tv.setText(String.valueOf(i));
            }
        }
    };
    TimerTask task = new TimerTask() {
        @Override
        public void run() {
            Message message = new Message();
            message.what = 1;
            handler.sendMessage(message);
        }
    };
    @Override
    protected void onDestroy() {
        super.onDestroy();
        task.cancel();
    }
}
 效果如下图:
 
 
   
 
 
 
 
 
 |