快速添加自定义按钮 UISearchController

问题描述

我想快速在 UISearchController 上添加一个自定义按钮。

enter image description here

像这张图片一样,我想添加自定义按钮。在这图片中,它是一个搜索栏。如果搜索栏中有文本,加号按钮将显示,如果搜索栏为空,加号按钮将消失。谁能帮我实现一下。

解决方法

当 TextField 更改时,检查是否有空格。
根据按钮是否为空白来隐藏或定位按钮。
加载视图后,文本字段为空,因此使用 ishidden() 进行初始化。

希望我的回答对你有帮助。

SearchViewController.swift

import UIKit

class SearchViewController: UIViewController,UITextFieldDelegate {

    @IBOutlet weak var searchTextField: UITextField!
    @IBOutlet weak var plusButton: UIButton!
    
    override func viewDidLoad() {
        super.viewDidLoad()

        searchTextField.delegate = self
        plusButton.isHidden = true
    }
    

    func textFieldDidChangeSelection(_ textField: UITextField) {
        if searchTextField.text == "" {
            plusButton.isHidden = true
        } else {
            plusButton.isHidden = false
        }
    }
}

预览

enter image description here