Ios UIDatePicker+;NSDate返回空值
我在Xcode 8/Objective-C中使用Ios UIDatePicker+;NSDate返回空值,ios,objective-c,nsdateformatter,uidatepicker,Ios,Objective C,Nsdateformatter,Uidatepicker,我在Xcode 8/Objective-C中使用UIDatePicker,让用户选择出生日期,然后将其发送到我的sql数据库。为此,我想将其转换为字符串,以便将其添加到insert语句中。问题是,我的代码似乎返回值(null)或什么都没有,这会使我的程序崩溃 我的.h文件: IBOutlet UIDatePicker *myDatePicker; @property (nonatomic, strong) IBOutlet UIDatePicker *myDatePicker; 我的.m文件:
UIDatePicker
,让用户选择出生日期,然后将其发送到我的sql数据库。为此,我想将其转换为字符串,以便将其添加到insert语句中。问题是,我的代码似乎返回值(null)或什么都没有,这会使我的程序崩溃
我的.h文件:
IBOutlet UIDatePicker *myDatePicker;
@property (nonatomic, strong) IBOutlet UIDatePicker *myDatePicker;
我的.m文件:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
df.dateStyle = NSDateFormatterMediumStyle;
NSString *date = [NSString stringWithFormat:@"%@",[df stringFromDate:myDatePicker.date]];
我尝试了上述代码的许多变体,包括
NSDate*selected=[mydatepicker date]
,并尝试转换这些代码,但我的数据库中要么出现(null),要么出现一个空单元格,导致程序崩溃 如@rmaddy所述,“很可能您没有将日期选择器连接到myDatePicker插座”。他是对的。进入我的故事板,你会发现那里有一个未连接的插座。如果是这样,你的故事板有很多控制和复杂的功能
使用NSAssert确保您不会错过任何东西的简单方法
范例
NSAssert(yourcontrol, @"IBOutlet not set for yourcontrol");
注意到你,它会崩溃的。这将在工作时节省您的时间很可能您没有将日期选择器连接到您的
myDatePicker
插座。@rmaddy先生您完全正确。我确实觉得自己像个白痴,我想使用mydatepicker.date会指定我正在使用的选择器,但我想不会,连接插座是有效的。非常感谢你!在iOS/Mac操作系统开发中,当某些东西似乎不起作用时,第一条规则是检查您的插座和操作连接。第二条规则也是检查您的插座和操作连接。:)在你停止浪费时间之前,你必须被它咬上几十次。