我有动物清单和特殊按钮。当我按下按钮时,我想去维基百科并更多地阅读这个动物。所以我写了这段代码:
-(IBAction)goWiki:(id)sender
{
NSString *wikiUrl = "http://ru.wikipedia.org/wiki/";
NSString *url = [NSString stringWithFormat:@"%@%@",wikiUrl,animalTitle];
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:url]];
NSLog(@"%@",url);
}
NSLog
显示网址写得正确,但没有任何反应。由于animalTitle
,我99.99%肯定。我的母语是俄语,animalTitle
也是俄语中的动物名称。
所以,如果链接像 http://ru.wikipedia.org/wiki/Frog 那么它的确如此有效,但如果它像
http://ru.wikipedia.org/wiki/Лягушка没有任何反应。
任何想法,我怎么能转移到俄罗斯文章?
谢谢!
答案 0 :(得分:3)
使用stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding
,如下所示 -
-(IBAction)goWiki:(id)sender
{
NSString *wikiUrl = @"http://ru.wikipedia.org/wiki/";
NSString *url = [NSString stringWithFormat:@"%@%@",wikiUrl,animalTitle];
url = [url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:url]];
NSLog(@"%@",url);
}
答案 1 :(得分:1)
首先尝试通过CFURLCreateStringByAddingPercentEscapes传递字符串animalTitle
。