我如何设置我的UISearchBar连接到我的UIWebView,以便能够使用一个单词而不是一个url使用快速search谷歌

如何设置我的UISearchBar连接到我的UIWebView,以便能够search一个字,而不是一个url的谷歌。 例如search苹果,而不是http://www.apple.com

inheritance人我的代码到目前为止

import UIKit import WebKit class ViewController: UIViewController, UISearchBarDelegate { @IBOutlet weak var searchBar: UISearchBar! @IBOutlet weak var webView: UIWebView! func searchBarSearchButtonClicked(searchBar: UISearchBar!) { searchBar.resignFirstResponder() var text = searchBar.text var url = NSURL(string: text) //type "http://www.apple.com" var req = NSURLRequest(URL:url) self.webView!.loadRequest(req) } override func viewDidLoad() { super.viewDidLoad() let url = NSURL(string: "http://google.com") let request = NSURLRequest(URL: url) webView.loadRequest(request) self.searchBar.delegate = self } } 

您需要将UISearchBar中的string附加到以下stringhttp://www.google.com/search?q=然后从中创build一个URL。 附加像这样的string

 text = text.stringByReplacingOccurrencesOfString(" ", withString: "+"); var url = NSURL(string: "http://google.com/search?q=".stringByAppendingString(text)); 

因此,search苹果将看起来像http://www.google.com/search?q=apple

这是我如何使用Swift 3和TextField来实现这个input。 希望它可以帮助别人。

  func search(){ var searchTerms = self.searchTextField.text! searchTerms = searchTerms.replacingOccurrences(of: " ", with: "+") let urlString = "http://www.google.com/search?q=\(searchTerms)" let url = URL(string: urlString) let request = URLRequest(url: url!) webView.loadRequest(request) self.searchTextField.endEditing(true)//dismiss keyboard }