내 응용 프로그램 - n jpg 이미지에서 gif 이미지를 만듭니다. 이 방법은 많은 이미지를 읽어야하므로 오랜 시간이 걸립니다. 이 메소드가 실행될 때 progressdialog를 보여주고 싶습니다. 제발, 어떤 생각이나 소스 코드 예제 도와주세요! 감사합니다.show runningdialog를 사용하여 지연 방법을 실행하는 중
0
A
답변
0
여기서 두 가지 작업을 수행해야합니다. 먼저 oncreateDialog() 메서드를 사용하여 대화 상자를 만듭니다. 두 번째로 장기 실행 작업을 수행하려면 async 작업을 사용해야합니다. 비동기 작업을 시작하면 대화 상자를 표시 할 수 있으며 작업을 완료하고 활동으로 돌아 가면 다시 닫을 수 있습니다. 그냥 UI 스레드에서 그 일을하는 경우
2
그것과 같을 것이다 (권장하지 않음) :
private void myMethodThatTakesALongTime() {
ProgressDialog progressDialog;
progressDialog = new ProgressDialog(getActivity());
progressDialog.setIndeterminate(true);
progressDialog.setMessage("Please Wait...");
progressDialog.show();
// Do expensive operations
progressDialog.dismiss();
}
가 나는 AsyncTask를에이 모든 퍼팅 추천 할 것입니다. 그 결과는 다음과 같습니다
private class MyAsyncTask extends AsyncTask<String, String, String> {
private ProgressDialog progressDialog;
protected void onPreExecute() {
//show your dialog before you start
progressDialog = new ProgressDialog(getActivity());
progressDialog.setIndeterminate(true);
progressDialog.setMessage("Please Wait...");
progressDialog.show();
}
@Override
protected String doInBackground(String... params) {
// do expensive operations in here
return null;
}
@Override
public void onPostExecute(String result) {
//dismiss your dialog when done
if (progressDialog != null && progressDialog.isShowing()) {
progressDialog.dismiss();
}
}
}
그리고 당신은 다음 줄을 사용하여이를 시작합니다 :
new MyAsyncTask().execute(String[] {});
관련 문제
- 1. FingerPaint에서 그리기 중 지연
- 2. WebSessionContext/CurrentSessionContext를 사용하여 세션을 지연 초기화하는 중
- 3. 로딩 중 지연 Default.png
- 4. 지연 qTip 종료 중
- 5. 봄 방법을 실행하는 방법
- 6. MSPuild를 사용하여 (실제로) AfterPublish를 실행하는 방법을 얻으려면
- 7. 통합 테스트의 일부로 지연 빈을로드 중
- 8. Python 지연 루프를 실행하는 가장 고통스러운 방법입니다.
- 9. 다른 클래스를 실행하는 방법을 이클립스
- 10. 코드로 실행하는 방법을 중지하는 방법
- 11. 장고 템플릿에이 코드를 실행하는 방법을
- 12. PHP 쿼리 내가 이렇게 같은 더 주변 따옴표가없는 paramters 중 하나를 사용하여, 쿼리를 실행하는 방법을 제대로
- 13. 지연 기능이있는 UIButton을 통해 UIViewController로드 중
- 14. 트랜잭션 사용 중 지연된 내용로드시 지연
- 15. .exe를 실행하는 중 오류가 발생했습니다.
- 16. 파일을 실행하는 중 StackOverflowError가 발생했습니다.
- 17. 지연 GWT 타이머를 사용하여
- 18. 아약스를 실행하는 중 문제가 발생했습니다.
- 19. 뒤틀린 : 원자로 가동 중 지연 생성
- 20. jquery.event.drag를 사용하여 dragstart를 지연 시키십시오.
- 21. 문제 Windows에서 easy_install.exe를 실행하는 중
- 22. 워크 플로를 병렬로 실행하는 중
- 23. Android : 백그라운드에서 스레드를 실행하는 중
- 24. 이벤트 처리기에서자가 자물쇠를 실행하는 중
- 25. Windows에서 Sourcery Codebench를 실행하는 중
- 26. BlackBerry BrowserField가 javascript를 실행하는 중
- 27. 웹 서비스를 실행하는 중 오류가 발생했습니다.
- 28. 미리로드하기 UIView 아이폰 앱 실행 중 지연 최소화하기
- 29. 다른 방법으로 ajax를 실행하는 방법을 제출
- 30. 앵커 태그 지연 "지연"
없음 소스 코드 예제를 여기에. 이를 위해 Google을 사용해보십시오. StackOverflow는 특정 질문에 대한 것입니다. 좋은 질문과 나쁜 질문을 보려면 [FAQ] (http://stackoverflow.com/faq)를 방문하십시오. – Eric