如何将字符串转换为可以与UIWebView loadRequest一起使用的格式?

时间:2009-11-06 21:45:48

标签: iphone uiwebview

事实证明,如果使用loadHTMLString将数据加载到UIWebView中,则webView将始终为canGoBack和canGoForward属性返回NO。不幸的是,我必须从大文件中提取文本片段,然后将该文本放入带有loadHTMLString的webView中。

[aWebView loadHTMLString:aString baseURL:nil];

为了使canGoBack和canGoForward属性能够反映正确的值,必须使用

[aWebView loadRequest:(NSURLRequest *)request]

如何将文本字符串转换为可以使用loadRequest处理的请求?

1 个答案:

答案 0 :(得分:0)

您可以覆盖NSURLRequest以在HTTP正文中返回您的字符串。 NSURLRequest类包含2条消息:

-(NSData*)HTTPBody 

and 

-(NSInputStream*)HTTPBodyStream

覆盖这些消息以将NSString作为NSData或NSInputStream返回可能会起作用。

将NSString转换为NSData很容易

[aStr dataUsingEncoding: NSASCIIStringEncoding];

一旦你有了这个,你可以将NSData转换为NSInputStream

[NSInputStream inputStreamWithData:someData];