簡體   English   中英

UIDatePicker返回當前日期未選擇的日期

[英]UIDatePicker returns current date not selected date

我有一個UIDatePicker ,它按照下面的代碼打印選定的日期。 但是,它不打印所選日期,僅顯示當前日期。

@objc func setupDiscoverButton() {

    let cell = Bundle.main.loadNibNamed("FirstTableViewCell", owner: self, options: nil)?.first as! FirstTableViewCell

    // Date
    let sessionDate = cell.datePicker.date

    print("date: \(sessionDate)")
}

這是我為UIDatePicker定義的地方。

 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = Bundle.main.loadNibNamed("FirstTableViewCell", owner: self, options: nil)?.first as! FirstTableViewCell

    // Date & time picker
    cell.datePicker.minimumDate = Date()
    cell.datePicker.timeZone = TimeZone.current

    // Discover button
    cell.discoverButton.addTarget(self, action: #selector(setupDiscoverButton), for: .touchUpInside)

    return cell
}

要獲取DatePicker的更改,請收聽datePickerChanged

datePicker.addTarget(self, action: #selector(datePickerChanged(picker:)), for: .valueChanged)

所以你的細胞會

 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = Bundle.main.loadNibNamed("FirstTableViewCell", owner: self, options: nil)?.first as! FirstTableViewCell

    // Date & time picker
    cell.datePicker.minimumDate = Date()
    cell.datePicker.timeZone = TimeZone.current
cell.datePicker.addTarget(self, action: #selector(datePickerChanged(picker:)), for: .valueChanged)

    // Discover button
    cell.discoverButton.addTarget(self, action: #selector(setupDiscoverButton), for: .touchUpInside)

    return cell
}

  @objc func datePickerChanged(picker: UIDatePicker) {
        print(picker.date)
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM