以下代码产生错误:
WebKitErrorDomain error 101
代码:
-(Void) searchBarSearchButtonClicked: (UISearchBar *) activeSearchBar {
NSString * query = [searchBar.text stringByReplacingOccurrencesOfString: @ "" withString: @ "+"];
NSURL * url = [NSURL URLWithString: [NSString stringWithFormat: @ "http://http://www.google.com/search?q =%, query]];
NSURLRequest * requestObj = [NSURLRequest requestWithURL: url];
[Home loadRequest: requestObj];
}
-(Void) loadView {
[Super loadView];
CGRect bounds = [[UIScreen mainScreen] applicationFrame];
searchBar = [[UISearchBar alloc] initWithFrame: CGRectMake (0.0, 0.0, bounds.size.width, 48.0)];
searchBar.delegate = self;
[Self.view addSubview: searchBar];
}
我不会说英语,依赖翻译。由于语言问题,这可能是键盘问题,还是编码问题?
答案 0 :(得分:5)
根据WebKitError标头,错误101表示“WebKitErrorCannotShowURL”,这不是很有帮助。
此行不正确:
NSURL * url = [NSURL URLWithString: [NSString stringWithFormat: @ "http://http://www.google.com/search?q =%, query]];
......看起来应该是这样的:
NSURL * url = [NSURL URLWithString: [NSString stringWithFormat: @ "http://www.google.com/search?q =%@", query]];
我不确定它是否会因为生成错误的网址而导致错误,或者是否是拼写错误。
答案 1 :(得分:4)
不要在字符串网址中包含空格。
答案 2 :(得分:2)
确保您的网址不包含空格和换行符。
为此,您可以使用以下代码:
NSString *newString = [url stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];