2017-06-13 82 views
0

基於我之前在here中的問題。我有兩個datePicker讓我們說A和B.我想設置A的最大值是B.date並且B的最小值是A.date。 但是當我改變B值時,A的最大值仍然在舊B的最大值。我對此沒有任何想法。Swift:將最小/最大DatePicker設置爲其他DatePicker

let date = NSDate() 
self.datePickerFrom.maximumDate = date as Date 
self.datePickerTo.minimumDate = datePickerFrom.date 

任何sugest和答案將幫助我。提前致謝。

+0

你在日期選擇器B的行動中設置此代碼? – Hosny

+0

@Hosny我把它設置在viewDidLoad中。我做錯了嗎? –

回答

2

您需要告訴視圖控制器中的某些功能,日期選擇器已更改。要做到這一點,聲明一些@IBAction中,看起來像這樣您的視圖控制器:

@IBAction func datePickerChanged(sender: UIDatePicker) 
{ 
    print("date has been set to \(sender.date)") 
} 

然後在你的故事板或XIB文件,點擊您的日期選擇器和「尊貴的更改」事件連接到這個新的方法。

connect value changed

然後運行一下,看看是否在控制檯中print行打印。

如果是這樣,您可以填寫更多的功能。也許是這樣的:

@IBAction func datePickerChanged(sender: UIDatePicker) 
{ 
    if sender == self.datePickerFrom 
    { 
      self.datePickerTo.minimumDate = sender.date 
    } 
    if sender == self.datePickerTo 
    { 
      self.datePickerFrom.maximumDate = sender.date 
    } 
} 
+0

我現在明白了,謝謝它的工作 –

相關問題