안드로이드 개발 질문/답변
(글 수 45,052)
VideoView를 이용하여 동영상을 재생하는 것을 구현하였습니다.
동영상이 뜨기전까지 시간이 좀 오래 걸립니다.
약 15초정도 기다려야 동영상이 재생됩니다.
이 시간동안 화면에는 아무런 표시가 되지 않는데여
프로그레스바를 넣어주고 싶습니다.
Thread를 이용하여 넣어주려고 아래와 같이 해봤는데
뜨기는 뜨는데 순간지나가서 보이지않네여.
다이얼로그 닫아주는거
dismissDialog(0);
removeDialog(0);
부분 주석처리하면 보입니다.
protected Dialog onCreateDialog(int id) {
switch (0) {
case DIALOG_PROGRESS_ID:
System.out.println(">>>>>>>>>> onCreateDialog() <<<<<<<<<<");
ProgressDialog progressDialog = new ProgressDialog(ClassName.this);
progressDialog.setMessage("로딩중입니다.");
new ProgressThread(handler).start();
return progressDialog;
}
return null;
}
final Handler handler = new Handler() {
public void handleMessage(Message msg) {
System.out.println(">>>>>>>>>> Handler() <<<<<<<<<<");
// 백그라운드 작업이 끝나고 실행해야 할 것들을 이곳에 구현한다. | UI 적인 부분 적용은 이곳에서...
dismissDialog(0);
removeDialog(0);
}
};
private class ProgressThread extends Thread {
Handler mHandler;
ProgressThread(Handler h) {
mHandler = h;
}
public void run() {
// 백그라운드로 실행해야 할 것들을 이곳에 구현한다.
System.out.println(">>>>>>>>>> Run() <<<<<<<<<<");
news_video.setMediaController(mc);
news_video.setVideoURI(video);
news_video.requestFocus();
news_video.start();
Message msg = mHandler.obtainMessage();
mHandler.sendMessage(msg);
}



