我正在尝试实现一个求职应用程序。结果在 UITableView 中显示给用户。当用户点击一个单元格时,它应该会打开原始的职位公告。为此,我实现了以下方法:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
NSString *url = [[NSString alloc]init];
url=[[[xmlParser jobs] objectAtIndex:indexPath.row] urlAddress]; //UrlAddress is an instance variable of type NSString
NSURL *urlJobDetail = [NSURL URLWithString:(url)];
[[UIApplication sharedApplication] openURL: urlJobDetail];
}
有趣的部分是:如果我输入一个像 @"http://www.google.com" 或任何其他链接的 NSString,它就可以工作。但是当我尝试打开一个“urlJobDetail”时,它就不起作用了......什么都没有发生......
我在 stackoverflow.com 中搜索了它,发现了这个:
url = [url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
比 url 有效,但此方法更改了原始 url 地址并添加了许多 % 符号,例如:“http://www.google.com%20 %20 %20”所以我得到一个找不到页面的错误。
我不明白为什么这个函数不接受常规的 NSString 变量?
我用 NSLog 检查了它,并且 url 似乎是完美的。
任何帮助都会非常非常感谢!
提前致谢