ANDROID APP
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
การส่งข้อมูลระหว่างเธรด: แฮนด์เลอร์ (Handler)<br />
61<br />
private Runnable mUpdateTimeTask = new Runnable() {<br />
public void run() {<br />
final long start = mStartTime;<br />
long millis = SystemClock.uptimeMillis() - start;<br />
int seconds = (int) (millis / 1000);<br />
int minutes = seconds / 60;<br />
seconds = seconds % 60;<br />
};<br />
}<br />
mTimeLabel.setText("" + minutes + ":"<br />
+ String.format("%02d",seconds));<br />
mHandler.postDelayed(this, 200);<br />
@Override<br />
protected void onPause() {<br />
mHandler.removeCallbacks(mUpdateTimeTask);<br />
super.onPause();<br />
}<br />
}<br />
@Override<br />
protected void onResume() {<br />
super.onResume();<br />
mHandler.postDelayed(mUpdateTimeTask, 100);<br />
}<br />
กรรมวิธี: การใช้งานนาฬิกาจับเวลาถอยหลัง<br />
ในหัวข้อก่อนหน้านี้เป็นการใช้งานแฮนด์เลอร์เพื่อสร้างนาฬิกาจับเวลา คลาส CountDown-<br />
Timer ก็เป็นคลาสหนึ่งที่มีการวมการทำงานของเธรดย่อยแบบเบื้องหลังและแฮนด์เลอร์เพื่อทำหน้าที่<br />
นับเวลาถอยหลัง<br />
นาฬิกาจับเวลาถอยหลังจะประกอบด้วยอาร์กิวเมนต์(Argument) จำนวน 2 ตัว คือ จำนวนของ<br />
มิลลิวินาทีที่จะให้นาฬิกานับถอยหลัง และค่าช่วงเวลาที่จะใช้เป็นความถี่ในการเรียกใช้ค ำสั่ง onTick()<br />
ซึ่งคำสั่ง onTick() เป็นคำสั่งที่ใช้ในการอัพเดตข้อความที่แสดงการนับถอยหลัง ซึ่งสามารถดูได้ในชุด<br />
คำสั่งที่ 3.7<br />
ชุดคำสั่งที่ 3.7 src/com/cookbook/countdown/CountDownTimerExample.java<br />
package com.cookbook.countdown;<br />
import android.app.Activity;<br />
import android.os.Bundle;<br />
import android.os.CountDownTimer;<br />
import android.view.View;<br />
import android.widget.Button;