bif*_*sbq 2 macos delegates protocols objective-c webview
我刚开始在Xcode,我正在尝试制作OS X Web浏览器.
我想知道我的webview何时加载,何时不加载.我已经看过很多来自这里和Apple Developer Library的页面了,这就是我得到的:
- (void)webViewDidStartLoad:(WebView *)webView {
//enter code here
}
Run Code Online (Sandbox Code Playgroud)
当然,我也看到了webViewDidFinishLoad void,但是当我尝试这一点时,AppDelegate.m没有任何事情发生.我已将webview连接frameLoadDelegate到App Delegate,根据我的理解,我还需要使用文件中的<>协议AppDelegate.h.我的问题是,当我输入webFrameLoadDelegateProtocol到<>的IT告诉我webFrameLoadDelegateProtocol不存在.
Jos*_*iah 10
这似乎是因为您尚未设置webView委托.您不需要将协议添加到标题中.相反,你需要在某处添加此代码,我建议在applicationDidFinishLaunching中
[webView setFrameLoadDelegate:self];
Run Code Online (Sandbox Code Playgroud)
然后你可以覆盖这些方法.如果这不起作用,那么请确保已将webView从标题连接到IB中的webView.还要确保合成webView .m.
最后,您可以将我的开源示例用于OS X浏览器.它是在MIT许可下,因此您可以自由使用它.
https://github.com/JosiahOne/basic_cocoa_web_browser
编辑
我刚才意识到,你正在使用错误的Cocoa方法.请改用这些方法.
-(void)webView:(WebView *)sender didStartProvisionalLoadForFrame:(WebFrame *)frame
{
//Did start Load
}
-(void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame
{
//Did finish Load
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2878 次 |
| 最近记录: |