Je trouve un comportement étrange de UIWebView.UIWebView et JavaScript
Dans le délégué
- (void)webViewDidFinishLoad:(UIWebView *)webView{
[self changeFont];
//[NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(changeFont) userInfo:nil repeats:NO];
}
En changeFont, j'appelle le code JavaScript pour changer la police de la page Web. Il ne sera pas appliqué mais si j'appelle changer la méthode de police après un délai de quelques secondes du délégué webViewDidFinishLoad, il sera appliqué. si les fichiers sont volumineux, comment pouvons-nous déterminer combien de temps webview prendra pour charger si nous devons déclencher le minuteur du délégué webViewDidFinish pour appliquer la taille de police et le style pour le fichier.
aucune explication pour cela. J'ai beaucoup cherché et rien n'est mentionné dans les docs.
Toute aide pourquoi un tel comportement d'UIWebView?
Est-il peut-être [tirer plus d'une fois] (http://stackoverflow.com/questions/1842370/uiwebview-didfinishloading- incendies-plusieurs fois)? –
Non, il ne tire pas plus d'une fois.Il ne tire qu'une seule fois. Ma question est la suivante: pourquoi le délégué est-il appelé lorsque le contenu du récepteur est toujours en cours de chargement?quand le récepteur a le contenu, alors webViewDidFinishLoad devrait être appelé. Dans webViewDidFinishLoad, j'ai coché comme ceci if (myWebView.loading == YES) {NSlog (@ "chargement");} et le journal est imprimé dans la console, cela signifie que la vue web n'est pas chargée et que le délégué est appelé. – ashish