2011-08-31 3 views
2

J'ai une chaîne appelée htmlString qui contient des informations formatées en html. J'ai besoin de mettre ces informations dans un webView qui charge la chaîne html entière, avec la couleur et les polices. Et j'ai besoin de connaître la hauteur de la corde. Comment puis-je faire?iOS - WebView et chaîne

+0

Vous voulez savoir quelle est la taille de la page après avoir rendu le code HTML? – Sam

Répondre

4

Vous voulez faire quelque chose comme:

[_webView loadHTMLString:htmlStr 
       baseURL:[NSURL fileURLWithPath:path]]; 

Vous pouvez voir les docs ici: http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebView_Class/Reference/Reference.html

Cela va charger votre code HTML dans le WebView et utiliser le chemin que vous fournissez en tant que root pour d'autres documents . En d'autres termes, votre chaîne html pourrait référencer d'autres fichiers (css, javascript, etc ...) et la baseURL est utilisée pour localiser les URLs qui utilisent des chemins relatifs.

EDIT:

Pour obtenir la hauteur, vous pouvez affecter le délégué du UIWebView comme il a une webViewDidFinishLoad: méthode pour vous dire lorsque la page est rendue. Ensuite, vous pouvez exécuter javascript sur la page pour déterminer la hauteur finale en utilisant la méthode de UIWebView - stringByEvaluatingJavaScriptFromString:

Cette réponse semble aussi assez pertinente: How to determine UIWebView height based on content, within a variable height UITableView?

+1

L'utilisateur demande comment obtenir la hauteur d'une chaîne. –

+0

La question semblait double. 1.) Comment charger la chaîne html dans UIWebView pour charger la couleur, les polices, etc ... 2.) Comment obtenir la "taille de chaîne"? Vous avez raison de dire que j'ai seulement répondu à la première partie, mais je ne suis pas encore sûr de ce qu'il demande pour la seconde. Vous pouvez calculer la hauteur d'une chaîne donnée 1.) une police et 2.) une largeur. Cependant, cela n'a pas de sens pour une chaîne html. Vous devez le rendre avant de pouvoir déterminer la hauteur. – Sam

+0

Andrea, si cette réponse ne vous aide pas, je vais l'enlever. Je pensais juste que c'était au moins une partie de ce que vous cherchiez. Veuillez expliquer ce que vous entendez par "hauteur de corde". Je suppose que vous ne voulez pas que les balises html soient factorisées dans la hauteur de la chaîne. Vous pouvez regarder http://developer.apple.com/library/ios/#documentation/UIKit/Reference/NSString_UIKit_Additions/Reference/Reference.html qui est ce que les gens utilisent généralement, mais cela ne fonctionnera pas si vous voulez la hauteur de la page html rendue. – Sam

-1

NSString * htmlStrings = «

Bonjour je suis ici

»; [_webView loadHTMLString: htmlStrings baseURL: [NSURL fileURLWithPath: null]]; Que voulez-vous dire en voulant connaître la hauteur de la corde?