我的UIsearch栏不起作用/将请求发送到其他站点

时间:2018-10-09 22:05:45

标签: ios iphone swift xcode6

我对此还是很陌生,但是我对为什么我每次输入URL地址后搜索栏都不起作用感到困惑。我正在尝试制作视频下载器应用。

import UIKit
import AFNetworking
import Alamofire

class ViewController: UIViewController {

@IBOutlet var Webview: UIWebView!
@IBOutlet var SearchBar: UISearchBar!

override func viewDidLoad() {


    if let url = URL(string: "https://www.google.com"){

        let requestObj = URLRequest(url: url)

        Webview.loadRequest(requestObj)
    }
    SearchBar.text = "http://"

}

func searchBarSearchButtonClicked(searchbar: UISearchBar) {

    searchbar.resignFirstResponder()

    let text = SearchBar.text
    let url = NSURL(string: text!)
    let request:URLRequest = URLRequest(url: url! as URL)

    //let request = NSURLRequest(URL: url! as URL)

    Webview.loadRequest(request)

}

}

1 个答案:

答案 0 :(得分:0)

添加UISearchBarDelegate协议方法以触发搜索栏协议​​方法;

class ViewController: UIViewController, UISearchBarDelegate, UIWebViewDelegate {
    override func viewDidLoad() {
        SearchBar.delegate = self
        webview.delegate = self // connect your webview in storyboard
    }

    // MARK: -  UISearchView Delegates
    func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
    }

    func searchBarSearchButtonClicked(searchbar: UISearchBar) {
        // call your function here
               let searchText = searchbar.text!
               let url = URL (string: searchText)
               let requestObj = URLRequest(url: url!)
               webView.loadRequest(requestObj)

        }

}