2013-07-21 37 views
0

我已經在我的應用程序的日期選擇器中設置了初始日期。如果我更改了值並選擇了它,但是當選擇值而不是更改微調器時,它顯示的值是今天的日期。UIDatePicker第一個值集合不是默認讀取

我一直在嘗試使用[UIDatePicker setDate:]方法,但是我遇到問題,它不會設置。這是我的「選擇」的日期(分配到一個按鈕動作)代碼:

- (IBAction)backToMap:(id)sender { 
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
    FirstViewController *fvc = [storyboard instantiateViewControllerWithIdentifier:@"FirstViewController"]; 
    fvc.modalTransitionStyle = UIModalTransitionStyleCoverVertical; 

    datePicked = [datePicker date]; 

    self.firstViewData = fvc; 

    fvc.passedData = datePicked; 

    // if isPickerType = 1 then it is date and time 
    // if isPickerType = 2 then it is just date 
    fvc.datePicker = isPickerType; 

    [self presentViewController:fvc animated:YES completion:nil]; 
} 
+0

你在哪裏設定日期? – Wain

+0

我想在'viewDidLoad'方法中設置初始日期(避免發生問題的變量) –

回答

1

當你這樣做:

FirstViewController *fvc = [storyboard instantiateViewControllerWithIdentifier:@"FirstViewController"]; 

您創建一個新的控制器,所以它有一個新的日期選擇器。所以,它的日期是默認日期。

您應該在現有的視圖控制器中使用日期選擇器,而不是創建一個新的日期選擇器,如果這是您試圖獲取用戶選擇日期的點。

如果這確實是您創建控制器的地方,那麼您可以設置想要獲取日期的日期。

+0

嘿,謝謝你,正如你所說我(想)我正在訪問在應用程序啓動時實例化的viewcontroller。我從'FirstViewController'到'FilterViewController'(這是有問題的),所以當我做'* fvc'時,我正在創建一個全新的視圖控制器?這實際上可以解釋我的內存問題..我怎樣才能引用**原始視圖控制器,而不是創建一個新的視圖控制器 –

+0

這取決於如何/何時創建原始視圖控制器。我希望控制器能夠處理選擇器代理和按鈕來完成,所以它會是:'[self.datePicker ...'。 – Wain

+0

感謝您的建議 –

相關問題