如果我改变地址栏中的内容,uiwebview不起作用?

时间:2011-08-31 13:16:01

标签: ios uiwebview

当我在webview地址栏中输入http://en.m.wikipedia.org/wiki/united_kingdom时,它可以正常工作,但是如果键入http://en.m.wikipedia.org/wiki/united王国则不行......

任何人都可以解释为什么会这样吗?

2 个答案:

答案 0 :(得分:1)

你不能在网址中包含空格,这就是为什么它不起作用!

编辑: 为了避免在网址中包含空格,您可以检查网址是否有空格,以及是否显示提醒。

if([url.text rangeOfString:@" "].location != NSNotFound) {
    //url contains a space, show an alert and don't load the request here!
}
else {
    //load the request into your webview!
}

答案 1 :(得分:0)

浏览器不允许空格。 像chrome这样的Web浏览器(桌面)等自动将空白空间转换为百分号%。要在目标c上执行此操作,您需要使用stringByAddingPercentEscapesUsingEncoding方法对其进行封装。以下是一个工作示例。

NSString *myUrl = @"http://en.m.wikipedia.org/wiki/united kingdom";
[myUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];