У меня есть некоторый код здесь (мой класс активности и некоторый класс, который расширяет WebViewClient), поэтому в своей деятельности я делаю что-то вроде этого:
protected Dialog onCreateDialog(int id) {
switch(id) {
case 1:
//logging vk dialog
Log.d("OLOLOLO", "webview");
dialog = new Dialog(this);
dialog.setContentView(R.layout.webviewl);
dialog.setTitle("loggin in");
webview = (WebView) dialog.findViewById(R.id.vkWebView);
webview.setWebViewClient(wvClforVK);
webview.loadUrl(url);
// do the work to define the pause Dialog
break;
case 2:
// already logged vk dialog
break;
default:
dialog = null;
}
return dialog;
}
и затем вызываю showDialog(1)
для некоторых buttonclick
listener.
В моем классе веб-просмотра в методе onPageFinished()
мне нужно закрыть свой диалог, но я думаю, что это будет неправильно:
MyActivity activity = new MyActivity(); //my main activity object
activity.dismissDialog(1);
Это не работает:
01-03 20: 41: 10.758: E / AndroidRuntime (1172): java.lang.IllegalArgumentException: диалог с идентификатором 1 никогда не отображался через Activity # showDialog
Как я могу заставить мой объект активности правильно закрыть диалоговое окно?