【发布时间】:2014-12-23 02:06:17
【问题描述】:
我正在查看 WebView 中的本地 html 页面,如果用户单击页面中的任何按钮,即<a href="www.google.com">
【问题讨论】:
标签: objective-c macos cocoa webview
我正在查看 WebView 中的本地 html 页面,如果用户单击页面中的任何按钮,即<a href="www.google.com">
【问题讨论】:
标签: objective-c macos cocoa webview
您想为您的视图设置policyDelegate。请参阅WebPolicyDelegate 的文档。你要实现的具体方法是:
- (void)webView:(WebView *)webView decidePolicyForNavigationAction:(NSDictionary *)actionInformation
request:(NSURLRequest *)request
frame:(WebFrame *)frame
decisionListener:(id<WebPolicyDecisionListener>)listener
最简单的方法就是致电[listener ignore] 获取所有信息。这也将阻止任何后退/前进导航、重新加载或表单提交工作。如果你想要更多的控制,你可以在调用[listener ignore]或[listener use]之前查看actionInformation字典并检查类型。
【讨论】:
NSString *url = actionInformation[@"WebActionElementKey"][@"WebElementLinkURL"]; 的网址,如果不是 nil 我打电话给[listener ignore]