NSURL定制方案麻烦

时间:2014-05-27 08:38:32

标签: ios6 uiwebview nsurl

我在下面编写了代码,以编程方式在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:......'。谁能告诉我问题是什么?提前谢谢。

1 个答案:

答案 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);