[英]Disable hyperlinks in PDF file in UIWebView
我有一個帶PDF文件的WebView,並且其中的文檔包含我要禁用的超鏈接。 我嘗試使用這種方法,但是沒有用,鏈接仍然打開並加載了討厭的URL:
- 我將
UIWebViewDelegate
放在ViewController.h
- 然后,將這段代碼放入
ViewController.m
:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
if (webView == myReadingArticlesWebView) {
return NO;
}
else {
return YES;
}
}
有什么想法可以使它變得簡單易用嗎? 我承認我在上述過程中可能會犯一些錯誤。
編輯:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
if ([request.URL isFileReferenceURL]) {
return YES;
} else {
return NO;
}
}
上面的代碼對我也沒有任何幫助
只需將UIWebView
的dataDetectorTypes
屬性設置為None即可 :
[myReadingArticlesWebView setDataDetectorTypes:UIDataDetectorTypeNone];
根據所有來回評論!!!
因此,現在您需要做的是,而不是簡單地在您的
shouldStartLoadWithRequest
方法,如果要加載的URL來自本地,則需要回答“是”,如果來自其他地方,則需要“否”。 使用
[request.URL isFileReferenceURL]
檢查它是否是本地文件的方法。 注意:此方法顯然僅適用於iOS 5及更高版本,請查看
希望這對你有幫助:-)
如果像trumpetlicks所說的那樣,PDF查看器將忽略您在shouldStartLoadWithRequest中所說的內容,並且如果您不想禁用所有鏈接(設置datadetector會這樣做)。
然后您可以嘗試的另一種方法是創建一個從NSURLProtocol派生的類,並將其注冊到您的應用程序委托中。 這將能夠攔截源自pdf的網絡流量,並為您提供過濾鏈接和阻止不希望出站的鏈接的機會。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.