0

J'utilise actuellement http://something.com ce lien dans uiwebview pour mon application ios. Dans ce site Web factice, il existe un autre lien. Je veux ouvrir l'écran natif de l'appareil photo ios après avoir cliqué sur ce lien. En ce moment je suis capable d'ouvrir la came seulement pour http://something.com cette URL. Mais j'ai besoin d'ouvrir la came en cliquant sur un autre lien à l'intérieur de ce http://something.com. Lorsque je clique sur l'autre lien, l'URL change en "http://something.com \ webapp". Alors, comment puis-je le faire fonctionner? Des idées?Chargement d'URL différent avec shouldStartLoadWithRequest

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { 
NSURL *url = request.URL; 
NSString *urlString = url.absoluteString; 

NSRange range = [urlString rangeOfString:@"http://something.com"]; 
if (range.location != NSNotFound) { 
    [self showCamera]; //camera starts 
    return YES; 
} else { 
    return NO; 
    } 
+0

Vous pouvez vérifier l'autre lien est présent ou non en utilisant « [urlString containsString: @ » l'autre url « ] ». Si elle est présente, vous pouvez openString "est disponible à partir d'iOS 8.0 – sanman

+0

Pouvez-vous me donner un exemple comment vais-je ouvrir un autre lien' http: // something.com/webapp' situé à l'intérieur de 'http: // something.com' en utilisant containsString ? @sanman – DDDDD

+0

Je voulais dire que vous pouvez vérifier la chaîne en utilisant "containsString" que vous êtes redirigé vers.Au lieu d'utiliser NSRange.i.e après avoir cliqué sur le bouton.Vérifiez la réponse de richmond. – sanman

Répondre

0

Cela devrait faire l'affaire:

if ([request.URL.absoluteString containsString:@"webapp"]) { 
    [self showCamera]; 
    return NO; 
} else { 
    return YES; 
}