作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为什么我选择日期后日期选择器会自动隐藏?我想在单击“完成”按钮后隐藏。
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var inputTextFiled: UITextField!
private var datePicker:UIDatePicker?
override func viewDidLoad() {
super.viewDidLoad()
datePicker = UIDatePicker()
datePicker?.datePickerMode = .date
datePicker?.addTarget(self, action: #selector(ViewController.donedatePicker(datePicker:)), for: .valueChanged)
datePicker?.locale = NSLocale(
localeIdentifier: "zh_CN") as Locale
datePicker?.setValue(UIColor.white, forKey: "textColor")
inputTextFiled.inputView = datePicker
let toolBar = UIToolbar().ToolbarPiker(mySelect: #selector(ViewController.dismissPicker))
inputTextFiled.inputAccessoryView = toolBar
}
@objc func donedatePicker(datePicker:UIDatePicker){
//For date formate
let formatter = DateFormatter()
formatter.dateFormat = "yyyy年MM月dd日"
inputTextFiled.text = formatter.string(from: datePicker.date)
//dismiss date picker dialog
self.view.endEditing(true)
}
@objc func cancelDatePicker(){
//cancel button dismiss datepicker dialog
self.view.endEditing(true)
}
@objc func dismissPicker() {
view.endEditing(true)
}
}
extension UIToolbar {
func ToolbarPiker(mySelect : Selector) -> UIToolbar {
let toolBar = UIToolbar()
toolBar.barStyle = UIBarStyle.default
toolBar.isTranslucent = true
toolBar.tintColor = UIColor.black
toolBar.sizeToFit()
let doneButton = UIBarButtonItem(title: "done", style: UIBarButtonItem.Style.plain, target: self, action: mySelect)
let spaceButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.flexibleSpace, target: nil, action: nil)
let cancelButton = UIBarButtonItem(title: "cancel", style: UIBarButtonItem.Style.plain, target: self, action: Selector(("cancelDatePicker")))
toolBar.setItems([cancelButton, spaceButton, doneButton], animated: false)
toolBar.isUserInteractionEnabled = true
return toolBar
}
}
这是我的所有代码,请帮助我,我想在单击“完成”按钮后隐藏。
最佳答案
您正在使用 datePickeras inputView of textield ,并且在 donedatePicker
中,您只是通过调用此 self.view.endEditing(true)
来强制结束编辑,因此从 didedatePicker 中删除它完成按钮的方法及使用
@objc func donedatePicker(datePicker:UIDatePicker){
//For date formate
let formatter = DateFormatter()
formatter.dateFormat = "yyyy年MM月dd日"
inputTextFiled.text = formatter.string(from: datePicker.date)
}
关于ios - 为什么我选择日期后日期选择器会自动隐藏?我想在点击 "done"按钮后隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57340195/
使用登录后,我想吐出用户名。 但是,当我尝试单击登录按钮时, 它给了我力量。 我看着logcat,但是什么也没显示。 这种编码是在说。 它将根据我在登录屏幕中输入的名称来烘烤用户名。 不会有任何密码。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
我是一名优秀的程序员,十分优秀!