为了账号安全,请及时绑定邮箱和手机立即绑定

为什么webview的Delegate方法没反应,代码如下

为什么webview的Delegate方法没反应,代码如下

iOS
忽然笑 2023-04-18 18:14:38
我在一个NSObject里做了一个WebView,然后用JS拿出一些node。但是,现在webview的Delegate方法没反应,代码如下MyObject.h@interface MyObject : NSObject - (void)load;@endMyObject.m@interface MyObject ()<UIWebViewDelegate>@end@implementation MyObject// 这个方法没反应- (void)webViewDidStartLoad:(UIWebView *)webView {    NSLog(@"start load"); } - (id)init {    self = [super init];    if (self) {        self.webView = [[UIWebView alloc] init];        self.webView.delegate = self;        return self;     }    return nil; }// 这个方法调用了- (void)load {    NSMutableURLRequest *requestObj = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://baidu.com"]];     [self.webView loadRequest:requestObj]; }@end调用是通过一个静态方法Util.m+ (void)getWebViewContent {     MyObject *obj = [[MyObject alloc] init];     [obj load]; }
查看完整描述

2 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

可能是你这个类没有实现UIWebViewDelegate哈

查看完整回答
反对 回复 2023-04-21
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

这个MyObject对象是一个局部的,在getWebViewContent函数内有效,函数执行结束,这个对象就没了。
所以,在getWebViewContent中把MyObject做成静态就OK了

+ (void)getWebViewContent
{    static MyObject *obj = nil;    if (nil == obj) {
        obj = [[MyObject alloc] init];
    }
    [obj load];
}


查看完整回答
反对 回复 2023-04-21
  • 2 回答
  • 0 关注
  • 133 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信