禁用UIWebView中的超链接

Rob*_*dan 2 iphone uiwebview

我想在加载初始页面后禁用UIWebVIew中的超链接,而不禁用滚动功能.也就是说,我应该启用用户交互.

Kai*_*ann 9

您可以像这样使用webView shouldStartLoadWithRequest:

    (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
    {

            NSURL *loadURL = [[request URL]retain];
            //change next line to whatever condition you need, e.g.
            //[[loadURL relativeString]  ....] contains a certain substring 
            //or starts with certain letter or ...
            if([[loadURL scheme] isEqualToString: @"file"])
            {
               [loadURL release]; 
            return TRUE;
            }
            [loadURL release];
            return FALSE;
    }
Run Code Online (Sandbox Code Playgroud)

您还必须将webViews委托设置为实现此方法的类的对象: [webView setDelegate:my...];

通过上面的实现,除了条件为真的那些之外,没有加载url.至少对于第一个网站的网址,它必须是真实的.上面的代码适用于最初加载文件内容的Web视图,仅包含指向"http://"或"https://"的链接或...