Android每隔2秒執行一次命令 即定時傳送任務 非Timer方法
阿新 • • 發佈:2019-01-08
public class MainActivity extends Activity { Button ks,js; TextView tv; String date; private Handler handler = new Handler( ); private Runnable runnable; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv = (TextView)findViewById(R.id.textView1); ks = (Button)findViewById(R.id.bt1); js = (Button)findViewById(R.id.bt2); runnable = new Runnable( ) { public void run ( ) { SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); //獲取繫系時間 date = sDateFormat.format(new java.util.Date()); Log.d("Date","獲取時間"+date); tv.setText(date); handler.postDelayed(this,2000); //postDelayed(this,2000)方法安排一個Runnable物件到主執行緒佇列中 } }; //開始 ks.setOnClickListener(new View.OnClickListener() { public void onClick(View arg0) { handler.postDelayed(runnable,1000); // 開始Timer } }); //停止 js.setOnClickListener(new View.OnClickListener() { public void onClick(View arg0) { handler.removeCallbacks(runnable); //停止Timer } }); } }