UIWebview communication entre la WebView et Objective C
lundi 26 mars 2012Il peut être utile d’avoir une interaction entre un site en locale dans une Webview et le language natif de l’iphone (objective-C).
Pour qu’il y ait interaction, il faut ajouter une fonction de délégation dans notre controller qui va se charger de « catché » toutes les requests lancées depuis la Webview.
D’abord dans le .h
@interface ShopmapsViewController : UIViewController <strong><UIWebViewDelegate></strong> { UIWebView *webview; }
Pour tout objet de délégation on rajoute dans le – (void)viewDidLoad
webView.delegate = self;
Ensuite on déclare la fonction suivante qui est appelé dès qu’une request a été composée dans la webview:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { }
Voilà dans la fonction, on sait récupérer le contenu de la request et faire toutes nos actions en Objective-C.