首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >显示MDTimePicker时键盘未关闭

显示MDTimePicker时键盘未关闭
EN

Stack Overflow用户
提问于 2020-02-28 18:45:31
回答 1查看 71关注 0票数 1

显示计时器选取器时出现问题。有两个文本字段: 1.第一个打开一个数字键盘。2.秒从材质控制中打开时间选择器。一旦我开始编辑第一个TF &如果我点击第二个TF,即使我点击Done按钮,数字键盘也不会消失。done按钮是使用ToolBar创建的&该方法包含"view.endEditing“代码。它工作正常,但在上述条件下不能正常工作。

代码语言:javascript
运行
复制
override func viewDidLoad() {
    super.viewDidLoad()
    rateInPointsTextField.delegate = self
}

extension MyAvailabilityVC : UITextFieldDelegate{
    let toolbar = UIToolbar()
    toolbar.sizeToFit()

    //done button for toolbaar
    let done = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(donePressed))
    toolbar.setItems([done], animated: false)

    self.rateInPointsTextField.inputAccessoryView = toolbar



@objc func donePressed(){
    self.view.endEditing(true)

}



func textFieldDidBeginEditing(_ textField: UITextField) {

    if textField == self.fromTimeTextField{

        let timePicker = MDTimePickerDialog()
        timePicker.delegate = self
        timePicker.tag = 100
        timePicker.clockMode = .mode12H
        timePicker.show()
        self.view.endEditing(true)
    }
}

func textFieldShouldReturn(_ textField: UITextField) -> Bool {

    self.rateInPointsTextField.resignFirstResponder()
    return true
}

}
EN

回答 1

Stack Overflow用户

发布于 2020-02-28 18:51:22

在视图控制器中确认UITextFieldDelegate并将TF委派设置为self

代码语言:javascript
运行
复制
class YourViewController: UIViewController, UITextFieldDelegate {

  @IBOutlet weak var your_tf: UITextField!
  override func viewDidLoad() {
        super.viewDidLoad()
        your_tf.delegate = self;

   }
   ....

  func textFieldShouldReturn(_ textField: UITextField) -> Bool {

        textField.resignFirstResponder()
        return true
    }

}

现在,当您按下键盘上的完成/返回按钮时,键盘将关闭。如果你想从你创建的按钮中退出,那么就像这样从done @Action fun调用textFieldShouldReturn(your_tf)

代码语言:javascript
运行
复制
...
@objc func donePressed(){
    textFieldShouldReturn(your_tf)

}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60450098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档