“定位查詢”locate()方法,增加一個線程,在該線程中處理查詢地點的功能,請參考代碼清單16-10,完整代碼請參考chapter16_7工程中src/com/work/map/mymapactivity.java檔案locate()方法代碼部分。
【代碼清單16-1】
通過下面的代碼是實作顯示進度條:
progdialog =progressdialog.show(mymapactivity.this, "進行中...", "定位" + findstring, true, false);
啟動一個子線程,在該線程中實作地點查詢,但是不能有更新ui的處理,如果查詢成功調用handler.sendemptymessage(0),如果失敗調用handler.sendemptymessage(1)。
new thread() {
@override
public void run() {
… …
}
}.start();
在hander的handlemessage方法中處理更新ui操作,其中成功(case 0)時候清除螢幕上原來的圖層,重新添加圖層,最後progdialog.dismiss()方法關閉進度條對話框。如果是查詢失敗(case 1)彈出toast說明一下,也要通過progdialog.dismiss()方法關閉進度條對話框,否則進度條對話框不會關閉。
出自《android開發案例驅動教程》第十六章