【发布时间】:2010-03-27 15:50:47
【问题描述】:
我是 iPhone 和 Objective-c 的新手,我仍在努力了解对象的所有权,所以请耐心等待。
我有一个 DOBViewController,上面有一个日期选择器。我创建了一个自定义的 init 方法:
-(id)initWithInitialDate(NSDate *)initialDate;
另一个视图控制器有一个声明的日期实例(NSDate *dob),它包含一个值。我想将此传递给 DOBViewController,以便它可以将日期选择器滚动到传递的值。
这里是自定义的init方法:
- (id)initWithInitialDate:(NSDate *)initialDate {
// Initialise ourselves
self = [super init];
// Set the date of the date picker
if (initialDate != nil) {
datePicker.date = initialDate;
}
else {
// Set it to today
datePicker.date = [NSDate date];
}
return self;
}
这就是我发送 dob NSDate 对象的方式:
DOBViewController *dobViewController = [[DOBViewController alloc] initWithInitialDate:dob];
其中 dob 是在头文件中声明的 NSDate 类型的变量。
这似乎不起作用,因为 initialDate 始终为 NULL。我做错了什么?
【问题讨论】:
标签: iphone objective-c xcode memory-management nsdate