Swift:UISearchBar:单击搜索按钮时获取文本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift:UISearchBar:单击搜索按钮时获取文本相关的知识,希望对你有一定的参考价值。

我正在玩Swift学习它,现在我无法从UISearchBar获取文本

现在我的代码看起来像这样:

import UIKit

class SecondViewController: UIViewController {

    @IBOutlet var myWebView : UIWebView
    @IBOutlet var adressbar: UISearchBar

    override func viewDidLoad() {
        super.viewDidLoad()

        adressbar.showsScopeBar = true

        var url = NSURL(string: "http://google.com")
        var request = NSURLRequest(URL: url)

        myWebView.scalesPageToFit = true
        myWebView.loadRequest(request)
    }

    func searchBarSearchButtonClicked( searchBar: UISearchBar!) {

        var url = NSURL(string: adressbar.text)
        var request = NSURLRequest(URL: url)

        myWebView.scalesPageToFit = true
        myWebView.loadRequest(request)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}
答案

viewDidLoad中,您必须将搜索栏的委托设置为从中接收searchBarSearchButtonClicked

import UIKit

class SecondViewController: UIViewController, UISearchBarDelegate
{
    @IBOutlet var myWebView : UIWebView
    @IBOutlet var adressbar: UISearchBar

    override func viewDidLoad()
    {
        super.viewDidLoad()

        adressbar.showsScopeBar = true
        adressbar.delegate = self

        var url = NSURL(string: "http://google.com")
        var request = NSURLRequest(URL: url)

        myWebView.scalesPageToFit = true
        myWebView.loadRequest(request)
    }

    func searchBarSearchButtonClicked( searchBar: UISearchBar!)
    {
        var url = NSURL(string: searchBar.text)
        var request = NSURLRequest(URL: url)

        myWebView.scalesPageToFit = true
        myWebView.loadRequest(request)
    }

    override func didReceiveMemoryWarning()
    {
        super.didReceiveMemoryWarning()
    }
}
另一答案

1.首先要遵守UISearchbarDelegate。

2.将搜索栏委托设置为self。

你可以在这里找到更多关于Swift iOS tutorial : Implementing search using UISearchBar and UISearchBarDelegate的信息

以上是关于Swift:UISearchBar:单击搜索按钮时获取文本的主要内容,如果未能解决你的问题,请参考以下文章

关闭 UISearchBar 键盘而不影响取消按钮

单击 UISearchBar 的取消按钮后,如何使用 UISearchBar 刷新我的 UITableView?

Swift iOS 8+ UISearchBar图标,占位符和文本居中

UISearchBar 中不显示取消按钮

UISearchBar 在解雇后正在调整大小

iOS,Swift 3 - 当我从详细视图返回后单击取消时,UISearchBar 消失