Don*_*son 19 iphone hyperlink uiwebview
我正在将一些内容从网络加载到一个UIWebView
,但我希望所有链接都被禁用UIWebView
.这可能吗?我可以解析文本,但我正在寻找更容易的东西.
Dav*_*ong 54
您可以给UIWebView
一个委托并实现-webView:shouldStartLoadWithRequest:navigationType:
委托方法return NO;
(初始加载除外).
这将阻止用户查看除该单页之外的任何内容.
提供评论中要求的示例...开始于allowLoad=YES
然后:
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
return allowLoad;
}
- (void)webViewDidFinishLoad:(UIWebView*)webView {
allowLoad = NO;
}
Run Code Online (Sandbox Code Playgroud)
ser*_*enn 11
在Swift 4.0中测试:这种方法不需要额外的变量来测试这是否是初始加载.只需检查请求的类型(在本例中为LinkClicked),并在这种情况下返回false.否则只需返回true!
(当然要确保你设置webView.delegate
)
func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool {
if navigationType == .linkClicked {
return false
}
return true
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16041 次 |
最近记录: |