我已经为UIButton按下的日期编写了代码。当前日期显示在UILabel文本属性中,并在按下按钮时更改为上一个日期。以下代码在iOS5上运行良好,但不适用于iOS6。使用iOS6,其输出为1999年12月31日或为null。

- (IBAction)showPrevDate:(id)sender
{
   NSString *dateForDecrement = _showDateLbl.text;
   [dateFormatter setDateFormat:@"MMM d, yyyy (EEE)"];

   NSDate *dateObjectForDecrement = [dateFormatter dateFromString:dateForDecrement];

   int subtractDays = 1;

   dateAfterDecrement=[dateObjectForDecrement dateByAddingTimeInterval:-(24*60*60 * subtractDays)];

  _showDateLbl.text = [NSString stringWithFormat:@"%@", [dateFormatter stringFromDate:dateAfterDecrement]];
}


有人可以验证一下,还是告诉我它是否是iOS6中的错误?

谢谢你们。

最佳答案

我认为这是一个错误。我在iOS 5和6之间遇到了相同的问题,但行为不同。

看一下这个:

http://openradar.appspot.com/12385667

http://openradar.appspot.com/12358210

也许您是其中之一。

关于ios - NSDateFormatter iOS6问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13108110/

10-13 04:31