如何使用从iPhone应用程序主视图传递的搜索字符串在子视图上调用google搜索

如何使用从iPhone应用程序主视图传递的搜索字符串在子视图上调用google搜索,iphone,objective-c,ios,xcode4,Iphone,Objective C,Ios,Xcode4,我的应用程序有两个视图,我想在第二个视图中调用google搜索,并从应用程序的主视图传递一个搜索字符串(它是产品的名称,例如“Samsung Mobile”) 我不想在谷歌搜索栏手动输入产品名称。当我按下主视图上的按钮时,它应该自动完成,结果页面应该显示在子视图上 -(void) setLabelText:(NSString *) myNewText { [productName setText:myNewText]; NSURL *theURL =[NSURL URLWith

我的应用程序有两个视图,我想在第二个视图中调用google搜索,并从应用程序的主视图传递一个搜索字符串(它是产品的名称,例如“Samsung Mobile”)

我不想在谷歌搜索栏手动输入产品名称。当我按下主视图上的按钮时,它应该自动完成,结果页面应该显示在子视图上

-(void) setLabelText:(NSString *) myNewText
{
    [productName setText:myNewText];

    NSURL *theURL =[NSURL URLWithString:@"http://www.google.com"];
    NSURLRequest *theRequest = [NSURLRequest requestWithURL:theURL];

    [webSearchView loadRequest:theRequest];
}
只是想知道是否可以通过上述函数将搜索字符串作为参数传递。

尝试以下操作:

NSString *urlString = [NSString stringWithFormat:@"http://google.com?q=%@", searchString];
NSURL *theURL =[NSURL URLWithString:urlString];

如果NSURL包含空格、特殊字符等,请不要忘记在将其传递给NSURL之前转义
urlString

根据H2CO3的回答,但我认为谷歌搜索URL可能已更改。我也更喜欢https而不是http:

NSString *urlString = [NSString stringWithFormat:@"https://google.com/search?q=%@", searchString];
NSURL *theURL =[NSURL URLWithString:urlString];

谢谢你的密码。它适用于单字字符串。即使我有一些产品名称包含两个用“空格”或“(”)分隔的单词。例如“三星移动”或“诺基亚(N90)。我希望在将这些特殊字符传递给URL字符串之前,应将其替换为“+”。@Sibin这就是我写最后一句的原因:)请查看
CFURLCreateStringByAddingPercentEscapes()
。我使用下面给出的代码替换特殊字符,而不是CFURLCreateStringByAddingPercentEscapes(),NSMutableString*strNew=[NSMutableString stringWithFormat:@“%@”,myNewText];[strNew setString:[strNew STRING BYREPLACINGOURCREPSOFSTRING:@”“withString:@“+”];在这里,我不能像前一行代码那样用<+>替换<>字符。有什么建议吗?@Sibin认真地看一下
CFURLCreateStringByAddingPercentEscapes()