use*_*144 1 android webview xamarin
嗨,我试图创建一个WebView应用程序,我想创建一个等待对话框,直到页面加载完毕。
但是,我尝试了不同的解决方案,但我无法弄清楚为什么当它为Internet上的其他人工作时它不起作用。它在Xamarin中失败,说在此行webview.SetWebViewClient(new WebViewClient(){,甚至我确定记得}的内容)之后缺少“}”;然后结束。
看来它无法在webview.SetWebViewClient()内部创建某些内容。
webview.SetWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
public void onLoadResource(WebView view, String url) {
//code to show dialog
}
public void onPageFinished(WebView view, String url) {
//code to dismiss dialog
}
});
Run Code Online (Sandbox Code Playgroud)
要将WebViewClient添加到WebView并从shouldOverrideUrlLoading C#中显示Toast消息,您将需要通过扩展WebViewClient 为创建一个类:
public class HelloWebViewClient : WebViewClient
{
public Activity mActivity;
public HelloWebViewClient(Activity mActivity){
this.mActivity=mActivity
}
public override bool ShouldOverrideUrlLoading (WebView view, string url)
{
view.LoadUrl (url);
Toast.MakeText (mActivity, "Toast Message",
ToastLength.Long).Show();
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
并使用HelloWebViewClient类构造函数传递活动上下文:
web_view.SetWebViewClient (new HelloWebViewClient (this));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3557 次 |
| 最近记录: |