关于iOS设备选择12小时和24小时显示导致NSDateFormatter dateFromString 返回nil的问题

最近的项目在测试中发现了一个问题,我们的APP内有一个通过比较后台返回的时间来进行倒计时的功能,利用NSDateFormatter datefromString来计算倒计时的时间,起初并没有发现什么问题,但在手机设备设置显示时间制为12小时时,通过字符串获取的NSDate一直为nil。

在经过多次测试后,发现是NSDateFormatter设置的问题

我们原先的代码设置为[NSDateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss"];

差别就在这个hh上,hh为12小时制,只要把hh改为24小时制的HH,在无论是设置12小时制或24小时制的设备中,都可以正常的获取到从字符串得到的日期信息了。

你可能感兴趣的:(关于iOS设备选择12小时和24小时显示导致NSDateFormatter dateFromString 返回nil的问题)