2

私はiOS開発の初心者です。ストーリーボードにこのViewControllerがあります(UIDatePickerとバーボタンが含まれています):

ここに画像の説明を入力してください

DataCellに従ってDatePickerを呼び出しました。ユーザーがページ内のボタンをクリックすると、PickerDateがポップアップし、ナビゲーションバーに完了バーボタンが表示されます。

ここに画像の説明を入力してください

問題は、現在の日付だけがとして表示されることdefaultです。プロパティから設定しても何も変わりません。

ここに画像の説明を入力してください

どうすれば修正できますか?(setting up the propertiesまたはプログラムによって)。

4

3 に答える 3

9

私はこのようにプログラムでそれをしました:

NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDateComponents *components = [[[NSDateComponents alloc] init] autorelease];
[components setYear:1980];
[components setMonth:1];
[components setDay:1];
NSDate *defualtDate = [calendar dateFromComponents:components];
pickerView.date = defualtDate;

しかし、それでもなぜそれが機能しないのかわかりませんsetting up the properties。何か助けはありますか?

于 2012-08-07T10:09:41.377 に答える
4

Swiftの場合

let calendar: NSCalendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)!
calendar.timeZone = NSTimeZone(name: "UTC")!
let components: NSDateComponents = NSDateComponents()
components.year = 1980
components.month = 1 
components.day = 1
let defaultDate: NSDate = calendar.dateFromComponents(components)!
self.dateOfBirthUIDatePicker.date = defaultDate
于 2015-04-02T13:57:14.543 に答える
2

上記の素晴らしい答え-Swift3(2月17日)バージョンは次のとおりです。

let calendar: NSCalendar = NSCalendar(calendarIdentifier:  .gregorian)!
calendar.timeZone = NSTimeZone(name: "UTC")! as TimeZone
let components: NSDateComponents = NSDateComponents()
components.year = 1980
components.month = 1
components.day = 1
let defaultDate: NSDate = calendar.date(from: components as DateComponents)! as NSDate
self.datePicker.date = defaultDate as Date
于 2017-02-07T18:27:49.610 に答える