我正在调查是否可以将webkit-sharp用于我的申请。
我需要的主要功能是能够处理自定义URI:我希望拦截链接点击并自行处理,例如致电WebView.LoadHtmlString
。我怀疑这可以用WebView.NavigationRequested
事件完成,但我没有立即看到一种方法来抑制正常的URI处理。我也找不到webkit-sharp或webkit本身的任何参考文档。
可以吗?
答案 0 :(得分:4)
显然要禁止正常的URI处理,你必须将事件参数对象的NavigationRequestedEventArgs.RetVal
设置为1
,这是webkit头文件中WEBKIT_NAVIGATION_RESPONSE_IGNORE
的值。
答案 1 :(得分:0)
我知道在WebKit的Objective-C界面中,您可以使用此WebPolicyDelegate方法:
- (void)webView:(WebView *)sender decidePolicyForNavigationAction:(NSDictionary *)actionInformation request:(NSURLRequest *)request frame:(WebFrame *)frame decisionListener:(id<WebPolicyDecisionListener>)listener
如果您想自己处理导航,请使用:
[listener ignore];
如果您想要使用默认行为:
[listener use];
在我输入这个内容时,你几乎已经发现了你的webkit-sharp实现。