首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ShouldStartLoad of自定义UIWebViewDelegate在UIWebView请求开始加载时未被调用

ShouldStartLoad of自定义UIWebViewDelegate在UIWebView请求开始加载时未被调用
EN

Stack Overflow用户
提问于 2011-03-23 10:57:11
回答 2查看 7K关注 0票数 6

我已经定义了一个UIWebViewDelegate类并在我的UIWebView的Delegate属性中实例化了它,但是在webview加载请求时没有调用ShouldStartLoad方法。我做错了什么?

下面是定义我的UIWebViewDelegate和UIWebView的代码:

代码语言:javascript
复制
public class MyWebViewDelegate: UIWebViewDelegate
{
    private UIWebView _view;
    public MyWebViewDelegate (UIWebView view)
    {
         _view = view;
    }   
    public override bool ShouldStartLoad (UIWebView webView, 
                                          MonoTouch.Foundation.NSUrlRequest request,
                                          UIWebViewNavigationType navigationType)
    {
        System.Console.WriteLine("Starting load");
        return true;
    }
}

public class MyWebView : UIWebView
{
   private static MyWebView _instance = new MyWebView ();
   private MyWebView () : base()
   {
       this.Delegate = new MyWebViewDelegate(this);
   }
   public static MyWebView Instance {
       get { return _instance; }
   }
   public void Load ()
   {
       this.LoadRequest (new NSUrlRequest(NSUrl.FromString("http://myurl"),
                           NSUrlRequestCachePolicy.ReloadIgnoringLocalAndRemoteCacheData,
                           5)
                        );
   }
}

在我的app委托中,我将在FinishedLaunching方法中执行以下操作:

代码语言:javascript
复制
// Create form view controller
viewControllerForm = new UIViewController();
viewControllerForm.View = MyWebView.Instance;
viewControllerForm.Title = Localization.Translate("Forms");

// Load webview
MyWebView.Instance.Load();

请注意,我已经使用copy/ and给出了这个代码示例,所以这里可能有一些小的复制/粘贴错误,但是我的代码正在编译,webview加载请求;只是没有调用ShouldStartLoad。

有人知道我在这里做错了什么吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-26 08:22:01

我通过使用webview的ShouldStartLoad属性来解决这个问题,如下所示:

代码语言:javascript
复制
myView.ShouldStartLoad = (webView, request, navType) => {
     // Determine here what to do
}

我是从miguel.de.icaza'shere发布的问题的回答中得到这个答案的。

票数 10
EN

Stack Overflow用户

发布于 2011-03-24 21:35:11

不要子类UIWebView。参见UIWebView类引用-子类注释:http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebView_Class/Reference/Reference.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5404152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档