有時候程式想讓他暫停個幾秒在運作 但又不想用太難的技巧 可參考下面 ================= 在Method裡
Thread thread=new Thread(new Runnable()
{
@Override
public void run()
{
}
});
thread.start();//開始執行緒
//想暫停的時候
thread.sleep(3000);//毫秒的意思 3000就是3秒 以此類推
//最後不用時
thread.stop();//停止執行緒
-----如果想透過Thread傳值 或 改變TextView 的文字或跳出Toast 就必須要加入Handler----- 如果運算比較長或是不希望造成Activity暫停回應的狀況, 會將運算的部分另開一個Thread,而在Thread中並沒有辦法改變畫面上的任何UI,所以會使用Handler來完成UI更新的目的
//new一個執行緒,progressBar每秒增加5 ,到100%時停止
Thread mThread = new Thread(new Runnable() {
public void run() {
Message message;
String obj="run";
for(int i=0 ; i < 20; i++){
try{
threadCount = (i + 1) * 5;
Thread.sleep(500);
progressBar.setProgress(threadCount);
message = handler.obtainMessage(1,obj);
handler.sendMessage(message);
}catch (Exception e) {
e.printStackTrace();
}
}
}
});
mThread.start();
private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
String MsgString = (String)msg.obj;
if (MsgString.equals("run"))
{
//do something
if(threadCount>=100){
Toast.makeText(OrderActivity.this,"下載完成!!!!",Toast.LENGTH_SHORT).show();
textView.setText("100%");
}else{
textView.setText(threadCount+"%....");
}
}
}
};