0

Androidアプリに1つのWebビューと1つのボタンがあります。ProgressDialog を表示し、次のような onPageStarted 関数のボタンのクリックを無効にしています。

public void onPageStarted(WebView view, String url, Bitmap favicon)
{


                    super.onPageStarted(view, url, favicon);
                    Dialog.show();
                    button1.setClickable(false);

}

onPageFinished の進行状況バーを無効にし、ボタンを有効にする

  public void  onPageFinished(WebView view, String url)
    {
                        if(Dialog.isShowing())
                                        {
                                                    Dialog.dismiss();
                                        }

                        button1.setClickable(true);

    }

しかし、私の問題は、ボタンをクリックしたときです。クリック可能ではないか、ページのどこかをクリックしても、ショー機能で正しく表示されていたプログレスバーが非表示になり、Webページがwebviewにロードされた後、ボタンがクリック可能になります.url のロード後に onPageFinished が呼び出されるまで継続プログレス バーを表示する方法

4

3 に答える 3

1

ダイアログがdismiss/close外部から触れないようにする場合は、次のようにする必要があります。

 ProgressDialog Dialog = new ProgressDialog(Activity.this);
 Dialog.setCancelable(false);
于 2013-03-07T13:50:45.717 に答える
1

まず、次のダイアログガイドを確認します:http://developer.android.com/guide/topics/ui/dialogs.html

第二に、それはあなたのダイアログがモーダルではないからです。ユーザーがダイアログの外側をクリックするか、戻るボタンをクリックしてダイアログをキャンセルしないようにするには、次の手順を実行する必要があります。

dialog.setCancelable(false);

于 2013-03-07T13:46:33.787 に答える
0

あなたは使用したいかもしれません:

 dialog.setCanceledOnTouchOutside(false);

進行状況ダイアログの外側をクリックすると、進行状況ダイアログが閉じません。

于 2013-03-07T13:53:38.567 に答える