У меня есть приложение, которое добавляет веб-просмотр в качестве подпредставления основного UIViewController. Я хочу перехватить ссылки, нажимаемые в этом веб-представлении, и открыть их в новом UIViewController (как модальное представление или navigationController).
Для этого нового UIViewController я использую https://github.com/samvermette/SVWebViewController, который является встроенным классом браузера и работает довольно хорошо.
Я могу просто перехватывать клики из этого веб-просмотра в webView: shouldStartLoadWithRequest: navigationType. Но моя проблема в том, что он не может открыть новый UIViewController (SVWebViewController). Ниже приведен код для перехвата кликов в веб-представлении и его открытия:
- (BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
if(inType == UIWebViewNavigationTypeLinkClicked) {
NSURL *url = [inRequest URL];
NSString *fname = [url absoluteString];
SVWebViewController *webViewController = [[SVWebViewController alloc] initWithAddress:fname];
[self presentModalViewController:webViewController animated:YES];
[webViewController release];
return NO;
}
return YES;
}
В SVWebViewController нет проблем, он отлично работает, когда я вызываю его из основного UIView, но не когда я использую его для открытия кликов из веб-просмотра.
Спасибо за вашу помощь !!