2014-11-29 6 views
0

최근 Android Webview 앱에 다음 대화 상자를 추가했습니다. 그것은 완벽하게 작동하지만 지금은 일정 시간 동안 대화 상자를 보여주고 싶습니다.이 예제에서 페이지가 89 %로로드 될 때까지 보겠습니다.페이지가 완전히로드되기 전에 Android Webview 앱이 사라지는 진행 대화 상자를 만드는 방법은 무엇입니까?

if(progress == 89 && progressDialog.isShowing()) 
       progressDialog.dismiss(); 

문제는 그것이 내가 원하는 것처럼 89 %에 도달 할 때 대화 상자가 사라지고 있다는 것입니다,하지만 다시 시작 :

final Activity activity = this; 

    final ProgressDialog progressDialog = new ProgressDialog(activity); 
    progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); 
    progressDialog.setCancelable(false); 

    webView.setWebChromeClient(new WebChromeClient() { 
     public void onProgressChanged(WebView view, int progress) { 
      progressDialog.show(); 
      progressDialog.setProgress(0); 
      activity.setProgress(progress * 1000); 

      progressDialog.incrementProgressBy(progress); 

      if(progress == 100 && progressDialog.isShowing()) 
       progressDialog.dismiss(); 
     } 
    }); 

나는이에 코드의 마지막 부분을 변경하여이를 달성하기 위해 노력 이후에는 사라지지 않고 100 %로로드됩니다.

무엇이 여기에 있습니까?

답변

1

난 당신의 코드를 실행하지 않은, 그러나 이것은, 내가 기대하고있어, 그 : 공공 무효가 (웹보기보기, INT 진행) {

을 onProgressChanged

은 후라고도 적재량의 89 %.

그것의 탐을 얻으려면, 먼저 변경할 수 있습니다

경우 (진행 == 89

에 :

경우 (진행> = 89

작동해야하지만 시작부터 코드가 멋지 지 않을 것입니다. 정말 우아하지 않습니다. (진행 상황을 바꿀 때마다 진행 상황을 보여줍니다. 제대로 표시되게하려면 onProgressChanged 메소드가 아니라 한 번만 표시하십시오.