我在下面编写了代码,以编程方式在UIWebview中加载URL。
NSString *urlStr = [NSString stringWithFormat:@"app-api://camera_button(%@)", @"{\"date\":\"2014-05-26\",\"referer_url\":\"http://google.com",\"abort_url\":\"http://google.com"}"];
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:urlStr]]];
在webView的委托方法webView:shouldStartLoadWithRequest:navigationType:中,我发现正在加载的url已更改为'file:// app-api:// ......'。但我需要的是'app-api:......'。谁能告诉我问题是什么?提前谢谢。
答案 0 :(得分:0)
如果网址字符串出现问题,请使用以下代码( stringByAddingPercentEscapesUsingEncoding
)
NSString *urlString = [NSString stringWithFormat:@"URL_STRING"];
NSURL *finalURL = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
<强> EDITED 强>
您可以使用以下代码
从网址字符串中删除 file://NSString *selectedRequest = "MY URL STRING";
NSString *requestString = [selectedRequest stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *finalString = [requestString stringByReplacingOccurrencesOfString:@"file://" withString:@""];
NSLog(@"%@", finalString);