在android中创建计时器

来源:互联网 发布:淘宝营销培训 编辑:程序博客网 时间:2024/06/01 08:54

activity文件

package com.example.administrator.ming;import android.icu.text.SimpleDateFormat;import android.os.Handler;import android.os.Message;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;public class MainActivity extends AppCompatActivity {    private TextView mTv;    private Button btu;    private Handler mHandler = new Handler() {        @Override        public void handleMessage(Message msg) {            super.handleMessage(msg);            //收到消息后获取当前时间显示当前时间            long current = System.currentTimeMillis();            SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");            dateFormat.setTimeZone(android.icu.util.TimeZone.getTimeZone("GMT+08"));   //设置时区            String time = dateFormat.format(current);            mTv.setText(time);        }    };    private Thread thread1;    private boolean isStart1 = false;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mTv=(TextView) findViewById(R.id.textView);        btu = (Button) findViewById(R.id.button);    }    //Thread方法    public void test(View view) {        Runnable runnable = new Runnable() {            @Override            public void run() {                while (isStart1) {                    mHandler.sendEmptyMessage(0);//                    if(sign) haha();//                    else xixi();                    try {                        Thread.sleep(1000);                    } catch (InterruptedException e) {                        e.printStackTrace();                    }                }            }        };        if (isStart1) {    //暂停功能            isStart1 = false;        } else {            isStart1 = true;            thread1 = new Thread(runnable);            thread1.start();        }    }}//    private void haha()//    {//        btu.setX(btu.getX()+30);//        if(btu.getX()>800) sign=false;//    }//    private void xixi()//    {//        btu.setX(btu.getX()-30);//        if(btu.getX()<0) sign=true;//    }
原创粉丝点击