Com*_*mpy 1 objective-c ios ios6
所以我有一个应用程序,其中一些数据从Web服务返回,并相应地进行UIDatePicker调整.日期以以下格式返回:
12-05-2013 16:05 (dd-mm-yyyy hh:mm)
Run Code Online (Sandbox Code Playgroud)
时间以24小时格式存储,但UIDatePicker为12小时或24小时,具体取决于设备上的设置.数据来自JSON数组,是关键的potdd.我正在设置的日期选择器称为potddatepicker.
NSDateFormatter *inputFormat = [[NSDateFormatter alloc] init];
[inputFormat setDateFormat:@"dd-MM-yyy hh:mm"];
NSDate *inputDate = [inputFormat dateFromString: [jsonObjects objectForKey:@"potdd"]];
NSDate *potdd = inputDate;
[_potddatepicker setDate:potdd];
Run Code Online (Sandbox Code Playgroud)
如果日期在12:00之前设置,那么它可以正常工作.但是,如果日期在12之后的24小时内存储,那么它将崩溃并出现以下异常:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: date'
Run Code Online (Sandbox Code Playgroud)
我不是特别想把时间强制为12小时格式只为datepicker然后强制它回到24小时,因为在一些当地人可能会在24小时日期选择器中使用.谁知道我怎么处理这个?我无法更改时间存储在数据库中的格式.
谢谢!
您的错误与日期选择器无关.
您使用错误的日期格式来解析字符串.你需要:
[inputFormat setDateFormat:@"dd-MM-yyyy HH:mm"]; // HH is 24-hour, hh is 12-hour
Run Code Online (Sandbox Code Playgroud)
此外,由于您使用的是固定格式,因此应将日期格式化程序的语言环境设置为en_US_POSIX.
| 归档时间: |
|
| 查看次数: |
4092 次 |
| 最近记录: |