définir un délégué pour UIWebView
-
30-09-2019 - |
Question
Comment puis-je configurer un délégué pour mon UIWebView
à l'utilisation webViewDidFinishLoad
?
La solution
Dans le fichier d'interface indique que vous êtes intéressé:
@interface SomethingController : UIViewController <UIWebViewDelegate> {
Ensuite, dans votre implémentation, vous allez ajouter cette méthode de délégué:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
// Do whatever you want here
}
Il est évident que SomethingController devrait être votre contrôleur réelle, et UIViewController est tout ce que vous réellement en œuvre.
, par ailleurs, est fondamentalement la façon de mettre en œuvre un délégué.
Modifier
Dans une application à base de fenêtres, en supposant que votre UIWebView est votre délégué de l'application, vous venez d'ajouter à la liste des délégués, séparés par des virgules, comme ceci:
@interface YourAppDelegate : NSObject <UIApplicationDelegate, UIWebViewDelegate>
Vous allez inclure votre webViewDidFinishLoad dans la mise en œuvre du délégué de l'application.
Edit 2
Enfin, vous devrez connecter votre UIWebView à votre contrôleur. Il est courant de le faire dans la méthode viewDidLoad
d'un UIViewController, avec une ligne comme celle-ci:
self.yourWebView.delegate = self;
Cela indique au UIWebView où il doit envoyer des messages.
Autres conseils
Suivez la capture d'écran ci-dessous
après la connexion inYourViewController.h
@interface inYourViewController : UIViewController<UIWebViewDelegate>
maintenant, vous êtes prêt à mettre en œuvre les méthodes de délégués dans le fichier inYourViewController.m
.
ou
vous pouvez faire la même chose à partir du code.
Après avoir connecté le webView avec le contrôleur d'affichage par l'intermédiaire d'IBOutlet
, de l'inYourViewController.m
de fichier viewDidLoad
Méthode écriture
self.yourWebView.delegate=self
Dans inYourViewController.h
@interface inYourViewController : UIViewController<UIWebViewDelegate>
Maintenant, vous êtes prêt à mettre en œuvre la méthode de délégué de webView.Thanks