ios - 我的 UIDatePicker 没有出现正确的格式
问题描述
这是我的代码。
extension ProfileViewController {
private func openDatePicker() {
let datePicker = UIDatePicker()
datePicker.datePickerMode = .date
ageTextFieldOutlet.inputView = datePicker
let toolBar = UIToolbar(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: 44))
let cancleButton = UIBarButtonItem(title: "Cancle", style: .plain, target: self, action: #selector(cancleButtonClicked))
let doneButton = UIBarButtonItem(title: "Done", style: .done, target: self, action: #selector(doneButtonClicked))
let flexibleBtn = UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, action: nil)
toolBar.setItems([cancleButton, flexibleBtn, doneButton], animated: true)
ageTextFieldOutlet.inputAccessoryView = toolBar
}
@objc func cancleButtonClicked() {
ageTextFieldOutlet.resignFirstResponder()
}
@objc func doneButtonClicked() {
if let datePiker = ageTextFieldOutlet.inputView as? UIDatePicker {
print(datePiker.date)
}
}
}
// MARK: - UITextFieldDelegate For Age
extension ProfileViewController: UITextFieldDelegate {
func textFieldDidBeginEditing(_ textField: UITextField) {
self.openDatePicker()
}
}
和图像以便更好地理解。
解决方案
在较新版本的 iOS(13.4+)中,如果您想要滚轮日期选择器,则需要指定样式,默认情况下它是自动的,并且通常默认为紧凑,在这种情况下,当您创建新的 UIDatePicker 时,您可以这样做:
let datePicker = UIDatePicker()
datePicker.datePickerMode = .date
datePicker.preferredDatePickerStyle = .wheels
ageTextFieldOutlet.inputView = datePicker
文件:
推荐阅读
- c# - 如何使用 c# 在 postgresql 中使用时区字段更新时间戳
- sql-server - 如何在需要按一个键列分组的 3 个表中加入和求和值
- c# - 获取文件夹中的所有文件和文件夹
- firebase - Firestore 安全规则 request.writeFields 已弃用
- php - 在 PhpStorm 中侦听 xdebug 连接时获取 ERR_EMPTY_RESPONSE
- scala - 无法在加特林脚本中实现 .extraInfoExtractor
- xna - 将 .fbx 转换为 .XBL
- square-connect - 如何在不让用户输入卡详细信息的情况下为重复交易生成卡随机数?
- vb.net - 如果 dialog.result.Cancel 然后做点什么
- flutter - 在可导航应用程序中保持不同小部件之间编辑状态的正确方法