How to Show UIPickerView when selecting UITextField

前端 未结 8 550
Happy的楠姐
Happy的楠姐 2020-12-08 03:52

Here is a screenshot of what I did till now:

\"enter

So what I am trying to do

8条回答
  •  庸人自扰
    2020-12-08 04:15

    Swift:

    internal var textFieldHandlerToolBar: UIToolbar = {
        let tb = UIToolbar.init(frame: CGRect.init(origin: .zero, size: CGSize.init(width: UIScreen.main.bounds.width, height: 44.0)))
        let doneBarButton = UIBarButtonItem.init(title: "Done", style: UIBarButtonItemStyle.done, target: self, action: #selector(actionDonePickerSelection))
        tb.setItems([doneBarButton], animated: false)
        return tb
    }()
    
    internal var pickerView: UIPickerView = {
        let pv = UIPickerView.init()
        return pv
    }()
    
    @objc internal func actionDonePickerSelection() {
         textField.resignFirstResponder()
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        self.pickerView.delegate = self
        self.pickerView.datasource = self
    }
    

    Use it like this:

    textField.inputAccessoryView = self.textFieldHandlerToolBar
    textField.inputView = self.pickerView
    

提交回复
热议问题