Я пробовал свой код, и он дает мне нуль за 2022 год, но в 2018 году 2020 года он дает Apr ... weird!
NSString *dateString=@"2022-04-01";
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSDate* myDate = [dateFormatter dateFromString:dateString];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"+5:30"]];
[dateFormatter setDateFormat:@"MMM"];
NSString *stringFromDate = [dateFormatter stringFromDate:myDate];
NSLog(@"%@ == %@",dateString,stringFromDate);
UPDATE:
Пожалуйста, проанализируйте строку следующим образом: 2016-04-01 01:00
Из-за летнего времени в Иордании часы будут сдвинуты на +1 час, поэтому нет времени во вселенной, как это: 2016-04-01 00:00
Это должно разрешить проблемы с ur с объектом nil.