Ошибка в диалоге веб-просмотра хода выполнения - Android Studio - PullRequest
0 голосов
/ 25 января 2019

если я позвоню onclick = "showLoader ();" на моем сайте, я получаю эту ошибку onclick в моем журнале

Журнал Android Studio: «Ошибка вызова метода в NPObject.»

Кто-нибудь, кто знает что-то об этой ошибке веб-просмотра Dialog?

Буду очень признателен

С наилучшими пожеланиями

Диалог:

public class ProgressDialogHelper {
    private static ProgressDialog progress;

    public static void dismissProgress() {
        if (progress != null) {
            progress.dismiss();
            progress.cancel();
            progress = null;
        }
    }

    public static void showProgress(Context mContext) {
        if (progress != null) {
            return;
        }
        progress = new ProgressDialog(mContext);
        progress.setView(View.inflate(mContext, R.layout.progress_bar_layout, null));
        progress.setMessage(mContext.getResources().getString(R.string.loading));
        progress.show();
    }
}

Активность:

 @JavascriptInterface
    public void showLoader() {
        ProgressDialogHelper.showProgress(mContext);
    }

 @JavascriptInterface
     public void hideLoader() {
         ProgressDialogHelper.dismissProgress();
   }

Это решение не работает для меня:

 @JavascriptInterface
public void showLoader() {
    ((MainActivity) mContext).runOnUiThread(new Runnable() {
        @Override
        public void run() {
            ProgressDialogHelper.showProgress(mContext);
        }
    });
}

1 Ответ

0 голосов
/ 25 января 2019

Я не уверен, почему вы получаете эту ошибку, но ProgressDialog устарела начиная с API 26. https://developer.android.com/reference/android/app/ProgressDialog

Я рекомендую использовать ProgressBar, встроенный в ваш интерфейс, как указано в документации, и если вам нужночтобы заблокировать пользовательский интерфейс, используйте:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE, WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);

Просто уберите флаг, как только ProgressBar скрывается.

...