안드로이드 개발 질문/답변
(글 수 45,052)
public class WaitDlg extends Thread { Context mContext; String mTitle; String mMsg; ProgressDialog mProgress; Looper mLoop; public WaitDlg(Context context, String title, String msg) { mContext = context; mTitle = title; mMsg = msg; setDaemon(true); } public void run() { Looper.prepare(); mProgress = new ProgressDialog(mContext); mProgress.setProgressStyle(ProgressDialog.STYLE_SPINNER); // mProgress.setTitle(mTitle); mProgress.setMessage(mMsg); mProgress.setCancelable(false); mProgress.show(); mLoop = Looper.myLooper(); Looper.loop(); } public static void stop(WaitDlg dlg) { dlg.mProgress.dismiss(); try { Thread.sleep(100); } catch (InterruptedException e) {;} dlg.mLoop.quit(); } } |
위와 같이 ProgressDialog를 사용 중입니다.
스타트후
웹에서 정보를 받고 파싱하여 리스트 형태로 뿌려주는 작업 완료후에
정지를 시키고 있는데요.
간혹, dismiss(); 가 호출 되었는데도, 정상적으로 화면에서 사라지지 않고,
멈추어(정지)있는 증상이 나타나는데요.
무엇때문에 그런 문제가 생기는지 잘 모르겠네요.