在我的应用程序中,JSON 日期字符串在不同时间被解析(在我的视图控制器、详细视图控制器和共享此页面操作中)。我只想设置一个 NSDateFormatter 并在需要时重复使用它。
到目前为止,我有一个 NSObject 文件(UpcomingRelease)
即将发布.h
+ (NSString *) formattedDate:(NSString *)jsonDateString;
即将发布.m
+ (NSString *) formattedDate:(NSString *)jsonDateString {
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
NSDate *readableDate = [dateFormatter dateFromString:jsonDateString];
[dateFormatter setDateFormat:@"MMMM dd"];
return [dateFormatter stringFromDate:readableDate];
}
现在在我的 detailViewController 中,我导入了“UpcomingRelease.h”,并且我的 viewLoad 中有这段代码
NSString *formattedDate = [self formattedDate:[_singleRelease objectForKey:@"release_date"]];
self.release_date.text = [NSString stringWithFormat:@"%@", formattedDate];
但我收到一条错误消息:“'ReleaseViewController' 没有可见的@interface 声明选择器'formattedDate:'”。如果我将 formattedDate 代码直接添加到它可以工作的页面(使用 - 而不是 +),但当我尝试从 NSObject 调用它时不会。
我做错了什么?
谢谢。