首页 > 解决方案 > 如何将倒数计时器添加到 UIAlertController

问题描述

我对 Swift 很陌生,找不到任何好的解释。我希望用户在单击警报中的 UITextField 并在 textField 中显示值时选择持续时间(h:m:s)。有人可以给我一个提示或解释。

标签: iosswiftiphone

解决方案


UITextField 具有称为 UITextFieldDelegate 的委托协议

在您的视图控制器中:

func viewDidLoad() {
    super.viewDidLoad()

    yourTextField.delegate = self
}

使您的 viewController 符合此委托。有一个 textFieldShouldBeginEditing 方法,当用户点击文本字段时调用它。您在此处返回 false,因此 textField 不会成为第一响应者,并且键盘不会打开,您可以展示您的选择器。

extension viewController: UITextFieldDelegate {

    func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
        //open your alert here
        openPicker()

        return false
    }

}

您可以使用 UIPickerView 呈现给用户。您可以在此处阅读相关内容,甚至可以根据示例创建它: UIPickerView 的解释和示例


推荐阅读