2009-11-06 5 views
1

Il s'avère que si vous chargez des données dans un UIWebView en utilisant loadHTMLString, le webView retournera toujours NO pour les propriétés canGoBack et canGoForward. Malheureusement, je dois extraire des fragments de texte à partir d'un gros fichier, puis mettre ce texte dans un webView avec loadHTMLString.Comment puis-je obtenir une chaîne dans un format que je peux utiliser avec UIWebView loadRequest?

[aWebView loadHTMLString: aString baseURL: nil];

Pour les propriétés canGoBack et canGoForward pour refléter les valeurs propres, il faut utiliser

[aWebView loadRequest: (NSURLRequest *) demande]

Comment puis-je convertir une chaîne de texte dans une requête qui peut être traité avec loadRequest?

Répondre

0

Vous pouvez surcharger NSURLRequest pour renvoyer votre chaîne dans le corps HTTP. La classe NSURLRequest comprend 2 messages:

-(NSData*)HTTPBody 

and 

-(NSInputStream*)HTTPBodyStream 

Redéfinition ces messages pour retourner votre NSString soit comme NSData ou nsInputStream pourrait fonctionner.

Conversion d'un NSString à NSData est facile

[aStr dataUsingEncoding: NSASCIIStringEncoding]; 

Une fois que vous avez ce que vous pouvez convertir en un NSData nsInputStream

[NSInputStream inputStreamWithData:someData]; 
Questions connexes