Mam aplikację Tab Bar Controller, która używa storyboardu. Każda karta ma widok UIWebview. Chcę przechwycić link, gdy użytkownik kliknie łącze w widoku sieciowym, jeśli link jest linkiem zewnętrznym (jeśli to nie jest moja strona) Chcę otworzyć łącze w innym UIViewControl. (podobnie jak w przypadku aplikacji Twitter Twitter))pushViewController nie działa z TabbarController
Teraz; Mam ten kod do przechwytywania łącza (jeśli link jest bing.com to powinien otworzyć go inny kontroler widoku), ale nie mogę otworzyć innego UIViewController (w tym przypadku PopViewController). To daje mi ten błąd:
Brak widocznych @interface dla 'GundemViewController' deklaruje selektor 'pushViewController: animowane:'
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
//CAPTURE USER LINK-CLICK.
NSURL *url = [request URL];
NSString *urlString = [url absoluteString];
/******
UIWebViewNavigationTypeLinkClicked: When user click on a link in the app it senses the action
*/
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
if ([urlString hasPrefix:@"http://www.bing.com/"]) {
PopViewController *popUpView = [[PopViewController alloc] initWithNibName:@"PopupViewController" bundle:nil];
[self pushViewController:popUpView animated:YES];
return NO;
}
}
return YES;
}
Zasadniczo po prostu przeciągam i upuszczam kontrolkę Tabbarcontroller na scenę (storyboard), niż próbuję stworzyć popup (oddzielne od wszystkich obecnych kart i innych rzeczy) Chcę tylko utworzyć kontroler widoku z góry i kiedy użytkownik kliknie przycisk zamykania. Muszę odrzucić –
Zobacz zmiany powyżej. –
Seamus Mam pomysł, który zostanie doceniony *** WebKit odrzucił nieprzechwycony wyjątek w webView: decisionPolicyForNavigationAction: request: frame: decisionListener: delegate: Nie można załadować NIB w pakiecie: 'NSBundle Users/Umut/Library/ab.app> (loaded) 'o nazwie' PopupViewController ' –