求人検索アプリを実装しようとしています。結果は 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 は完全に正しいようです。
どんな助けでも大歓迎です!
前もって感謝します