ios – Swift 3使用UINavBar按钮显示以编程方式创建的datePicker

ios – Swift 3使用UINavBar按钮显示以编程方式创建的datePicker,第1张

概述我以编程方式创建了一个UIPickerView,我目前从UITextField调用.相反,我想在用户按下导航栏上以编程方式创建的按钮时调用datePicker.这是我的datePicker代码目前的样子: func doDatePicker(){ // DatePicker self.datePicker = UIDatePicker(frame:CGRect(x: 0, y: 0 我以编程方式创建了一个UIPickerVIEw,我目前从UITextFIEld调用.相反,我想在用户按下导航栏上以编程方式创建的按钮时调用datePicker.这是我的datePicker代码目前的样子:

func doDatePicker(){    // DatePicker    self.datePicker = UIDatePicker(frame:CGRect(x: 0,y: 0,wIDth:     self.vIEw.frame.size.wIDth,height: 216))    self.datePicker?.backgroundcolor = UIcolor.white    self.datePicker?.datePickerMode = UIDatePickerMode.dateAndTime    HVACText.inputVIEw = self.datePicker    // Toolbar    let toolbar = UIToolbar()    toolbar.barStyle = .default    toolbar.isTranslucent = true    toolbar.tintcolor = UIcolor(red: 92/255,green: 216/255,blue:  255/255,Alpha: 1)    toolbar.sizetoFit()    // Adding button Toolbar    let donebutton = UIbarbuttonItem(Title: "Done",style: .plain,target: self,action: #selector(HVACVIEwController.doneClick))    let spacebutton = UIbarbuttonItem(barbuttonSystemItem: .flexibleSpace,target: nil,action: nil)    let cancelbutton = UIbarbuttonItem(Title: "Cancel",action: #selector(HVACVIEwController.cancelClick))    toolbar.setItems([cancelbutton,spacebutton,donebutton],animated: false)    toolbar.isUserInteractionEnabled = true    HVACText.inputAccessoryVIEw = toolbar}

我可以使用该按钮调用通用的datePicker,但我希望用户可以使用“完成”和“取消”按钮.我还希望datePicker出现在UItableVIEw的底部.我不想偏离视野.

任何帮助,将不胜感激.

这是按要求拍摄的屏幕截图.请注意,界面是正在进行的工作,文本字段将会消失.

解决方法 我找到了解决方案,并在此处发布代码:

class HVACVIEwController:  UIVIEwController,UItableVIEwDelegate,UItableVIEwDataSource,UITextFIEldDelegate,UNUserNotificationCenterDelegate {    @IBOutlet weak var HVACtable: UItableVIEw!    @IBOutlet weak var reminderCell: UItableVIEwCell!    let dateFormatter = DateFormatter()    let locale = NSLocale.current    var datePicker : UIDatePicker!    let toolbar = UIToolbar()    overrIDe func vIEwDIDLoad() {        super.vIEwDIDLoad()        navigationItem.rightbarbuttonItem = UIbarbuttonItem(Title: "Add",action: #selector(addTapped))        self.HVACtable.reloadData()        //doDatePicker()    }    func addTapped(){        doDatePicker()    }    func doDatePicker(){        // DatePicker        self.datePicker = UIDatePicker(frame:CGRect(x: 0,wIDth: self.vIEw.frame.size.wIDth,height: 200))        self.datePicker?.backgroundcolor = UIcolor.white        self.datePicker?.datePickerMode = UIDatePickerMode.dateAndTime        datePicker.center = vIEw.center        vIEw.addSubvIEw(self.datePicker)        // Toolbar        toolbar.barStyle = .default        toolbar.isTranslucent = true        toolbar.tintcolor = UIcolor(red: 92/255,blue: 255/255,Alpha: 1)        toolbar.sizetoFit()        // Adding button Toolbar        let donebutton = UIbarbuttonItem(Title: "Done",action: #selector(HVACVIEwController.doneClick))        let spacebutton = UIbarbuttonItem(barbuttonSystemItem: .flexibleSpace,action: nil)        let cancelbutton = UIbarbuttonItem(Title: "Cancel",action: #selector(HVACVIEwController.cancelClick))        toolbar.setItems([cancelbutton,animated: true)        toolbar.isUserInteractionEnabled = true        self.vIEw.addSubvIEw(toolbar)        self.toolbar.isHIDden = false    }    func doneClick() {        let dateFormatter1 = DateFormatter()        dateFormatter1.dateStyle = .medium        dateFormatter1.timeStyle = .none        setNotification()        //self.datePicker.resignFirstResponder()        datePicker.isHIDden = true        self.toolbar.isHIDden = true    }    func cancelClick() {        datePicker.isHIDden = true        self.toolbar.isHIDden = true    }
总结

以上是内存溢出为你收集整理的ios – Swift 3使用UINavBar按钮显示以编程方式创建的datePicker全部内容,希望文章能够帮你解决ios – Swift 3使用UINavBar按钮显示以编程方式创建的datePicker所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1063013.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存