当我点击一行时,我的应用程序卡住,这是 didSelectRowAtIndexPath
的代码,stringDate
等于这样的字符串:Feb 4
.
EditView *editController = [[EditView alloc] initWithNibName:nil bundle:nil];
[self.navigationController pushViewController:editController animated:YES];
NSDictionary *cellValue = [self.array objectAtIndex:[indexPath row]];
editController.savedString = [cellValue objectForKey"label"];
NSDateFormatter *df = [[NSDateFormatter alloc] init];
NSString *stringDate = [cellValue valueForKey"date"];
NSDate *parsedDate = [df dateFromString:stringDate];
editController.savedDate = parsedDate;
[editController release];
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];
点击行时出现此错误,在 NSString *stringDate = [cellValue valueForKey"date"];
行上出现此错误:
* Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: date'
更新:解析的日期设置为具有日期和时间模式的 UIDatePicker
,我只是将字符串日期转换为 NSDate
与 [timePicker setDate:savedDate animated:YES];
我创建 cellValue
作为一个 NSDictionary
基本上访问一个 plist
我在其中创建了一个 NSDictionary
然后写它带有一个格式化的 NSString
。 array
显示 plist
数组,因此我可以使用 [cellValue objectForKey"date"]
NSDictionary *cellValue = [self.array objectAtIndex:[indexPath row]];
你需要教格式化程序你的字符串满足的格式
应该是这样的:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat"MMM d"];
关于objective-c - 从 NSString 解析 NSDate 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9142421/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |