无法识别的选择器发送到实例
请帮助我,我试图将UITextField转换为NSDate。错误在哪里?无法识别的选择器发送到实例
.H
@property (weak, nonatomic) UITextField *finishDateField;
@property (strong,nonatomic) NSDate *endDate;
的.m
-(void) getDate{
SaveAndLoadClass* Loader = [[SaveAndLoadClass alloc] init];
[Loader loadSettings];
self.finishDateField = [Loader dateField];
[self firstCalculate];
}
-(void)firstCalculate{
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd MMMM yyyy"];
self.endDate = [dateFormat dateFromString: self.finishDateField.text];
NSLog(@"datefromField:%@",[dateFormat stringFromDate: self.endDate]);
}
- [__ NSCFString文本]:无法识别的选择发送到实例0x61000002c620 ***终止应用程序由于未捕获的异常 'NSInvalidArgumentException',原因:' - [__ NSCFString text]:无法识别的选择器发送到实例0x61000002c620'
很简单...你忘self.finishDateField
self.endDate = [dateFormat dateFromString:self.finishDateField.text];//error here
如果我这样做,我有“构建失败” – sLav9n
@ sLav9n它应该不会失败检查,如果您有项目中的任何其他错误或可能会尝试清理和构建。 –
也许你已经声明了另一个同名“finishDateField”的属性。仔细检查一下。 –
'finishDateField'不是IBOutlet,那你是如何初始化它的? –
我从另一堂课获得了它; 'self.finishDateField = [Loader dateField];'装载机另一个类的对象 – sLav9n
如果'[Loader dateField]'返回一个字符串,那么上面的不正确请使用'[currentlySelectedTextField setText:[Loader dateField]];'this行设置文本。它可能会删除您的构建错误。 – arunjos007