2012-02-20 3 views
1

그래서 웹이나 Google에서 검색 할 수있는 텍스트 필드를 만들었습니다. 문제는 Google에서 한 단어 이상을 검색 할 수 없다는 것입니다. Stackoverflow를 검색 할 수는 있지만 예를 들어 Stackoverflow 질문을 검색 할 수 없습니다. 코드는 다음과 같습니다.Google에서 검색하기

{ 

if ([textField.text hasPrefix:@"http"]){ 
    url=[NSURL URLWithString:[textField text]]; 
    request = [NSURLRequest requestWithURL:url]; 
    [webView loadRequest:request]; 
    }else{ 
     stringOne = @"http://www.google.com/search?q="; 
     NSString *stringTwo = TextField.text; 
     NSString *googleSearchString =[stringOne stringByAppendingString:stringTwo]; 
     NSURL *google = [NSURL URLWithString:googleSearchString ]; 
     request = [NSURLRequest requestWithURL:google ]; 
     [webView loadRequest:request]; 
    } 
} 

도움 주셔서 감사합니다.

답변

3

문자열이 올바르게 인코딩되지 않았을 수 있습니다. 아마 시도 : 당신이 브라우저에 URL을 보면,이 같은 것을 볼 수 있습니다

NSString* newGoogleSearchString = 
      [googleSearchString stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]; 
+0

작동합니다! 정말 고맙습니다! 나는이 문제에 대한 해결책을 찾고 있었고, 나는 그것을 찾기에는 너무 많은 시간을 보냈다! 다시 감사합니다! – Adri

2

: 중요 인수가 & Q = 유래 + 질문

http://www.google.com/search?client=safari&rls=en&q=Stackoverflow+questions&ie=UTF-8&oe=UTF-8 

입니다, 공백을 나타내는 '+'기호에 주목하십시오.

코드를 작동 시키려면 공백을 '+'문자로 교체해야합니다.