ToolBar完成按钮操作对UIDatePicker不起作用

问题描述 投票:4回答:3

我以编程方式在工具栏中的UIDatePicker上设置完成并取消按钮。但是,我无法检测完成和取消按钮的单击操作。我找不到问题的原因。这是我的代码:

@IBAction func btnDueDate_Click(sender: UIButton)
{
    var toolBar = UIToolbar()
    toolBar.barStyle = UIBarStyle.Default
    toolBar.translucent = true
    toolBar.tintColor = UIColor(red: 92/255, green: 216/255, blue: 255/255, alpha: 1)
    toolBar.sizeToFit()

    var doneButton = UIBarButtonItem(title: "Done", style: UIBarButtonItemStyle.Plain, target: self, action: Selector("Done_Click"))
    var spaceButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: nil, action: nil)
    var cancelButton = UIBarButtonItem(title: "Cancel", style: UIBarButtonItemStyle.Plain, target: self, action: Selector("Cancel_Click"))

    toolBar.setItems([cancelButton, spaceButton, doneButton], animated: false)
    toolBar.userInteractionEnabled = true

    self.datePicker.addSubview(toolBar)
    self.datePicker.hidden = false
}

func Done_Click()
{
    var dateFormatter = NSDateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"
    self.btnDueDate.setTitle(dateFormatter.stringFromDate(self.datePicker.date), forState: UIControlState.Normal)
}

func Cancel_Click()
{
    self.datePicker.hidden = true
}

你能帮我解决一下我做错了什么吗?

谢谢您的回答

最好的祝福

解决了:谢谢你的帮助,我通过编辑下面的代码行解决了这个问题:

self.view.addSubview(toolBar)

当我添加工具栏作为self.view的子视图,而不是self.datePicker的子视图,它工作正常。

ios swift uibarbuttonitem uitoolbar uidatepicker
3个回答
© www.soinside.com 2019 - 2024. All rights reserved.