![](/img/trans.png)
[英]Show UIDatePicker and its toolbar when clicking on a UIBarButtonItem
[英]Why is there empty space between my UIDatePicker and its toolbar when using the new datepickerstyle?
我的 iOS 应用程序使用大量 UIDatePickers 作为 UITextFields 的输入视图。 在 iOS 14 之前,它们运行良好,没有任何问题。 但是,对于新的“紧凑”样式,由于某种原因,在日期选择器和它的工具栏之间有一个透明的空间条。 这只发生在 iPhone X 及更高版本上,所以我假设它与曲面屏幕有关,但我看不出是代码的哪一部分导致了这个问题。 下面是日期选择器的代码片段以及问题的屏幕截图——任何帮助将不胜感激。
let toolbar = UIToolbar()
toolbar.sizeToFit()
let finishedButton = UIBarButtonItem(title: "Done", style: .plain, target: self, action: #selector(donedatePicker))
finishedButton.tag = datePickerField!.tag
let spaceButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.flexibleSpace, target: nil, action: nil)
let cancelButton = UIBarButtonItem(title: "Cancel", style: .plain, target: self, action: #selector(cancelDatePicker))
cancelButton.tag = datePickerField!.tag
toolbar.setItems([cancelButton,spaceButton,finishedButton], animated: false)
datePickerField!.inputAccessoryView = toolbar //datePickerField is the UITextField
灰色背景和“保存更改”按钮是实际的应用程序本身。
显然 new.compact 样式是用来代替文本字段的,而不是作为输入视图。 所以如果你想像我一样把它作为一个输入视图,你应该把样式改回.wheels。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.