0

次のコードがあります。アクティビティで 4 つのフラグメントを使用しています。フラグメントには webView があります。しかし、ご存知のように、すべてのデータをフラグメント用に準備するには時間がかかります。そのため、データの準備中に進行状況ダイアログを使用したかったのです。ええ、私はそれを呼び出しましたが、進行状況が完了した後、progressDialog を閉じようとしています。しかし、私はそれが私をとても好きだと思います。どこにも行かない。何か助けて?? ありがとう。

(注: 私は自分のプロジェクトからコードを消去しました。ここに追加し直したので、小さな間違いを犯した可能性があります。そこに固執しないでください。)

   public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){

    final ProgressDialog pd = new ProgressDialog(getActivity()) ;       
    if (wv != null) {
         wv.destroy();
    }     
     wv = new WebView(getActivity());
     wv.getSettings().setJavaScriptEnabled(true);                     


     wv.setWebChromeClient(new WebChromeClient() {
            public void onProgressChanged(WebView view, int progress)
            {pd = ProgressDialog.show(this, "", "Loading...", true);
             Log.e("Progress:", ""+progress);
             if(progress == 100){pd.dismiss();}
            }

        });


     wv.setWebViewClient(new WebViewClient(){

         @Override
            public void onReceivedError(WebView view, int errorCode, String description, String failingUrl)
            {
                Log.e("Connection:", "NO");
            }
      @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url)
            {   
                view.loadUrl(url);
                return true;
            }
     });    

     wv.loadUrl("http://mobile.twitter.com/Yali_Spor");  


     wva = true;

     return wv;

}
4

2 に答える 2

1

こうやって――

   final ProgressDialog pd;      
if (wv != null) {
     wv.destroy();
}     
 wv = new WebView(getActivity());
 wv.getSettings().setJavaScriptEnabled(true);                     


 wv.setWebChromeClient(new WebChromeClient() {
        public void onProgressChanged(WebView view, int progress)
        {pd = ProgressDialog.show(this, "", "Loading...", true);
         Log.e("Progress:", ""+progress);
         if(progress == 100){pd.dismiss();}
        }

    });
于 2013-09-03T10:46:21.447 に答える