相关疑难解决方法(0)

如何将NSDate转换为相对格式为"今天","昨天","一周前","一个月前","一年前"?

我想将nsdate转换为相对格式"Today","Yesterday","a week ago","a month ago","a year ago","date as it is".

我已经为它写了以下方法..但有些如何只是打印,因为它是日期..你能告诉我应该是什么问题吗?

//以下是我的函数,它将日期转换为相对字符串

+(NSString *)getDateDiffrence:(NSDate *)strDate{
    NSDateFormatter *df = [[NSDateFormatter alloc] init];

    df.timeStyle = NSDateFormatterMediumStyle;
    df.dateStyle = NSDateFormatterShortStyle;
    df.doesRelativeDateFormatting = YES;
    NSLog(@"STRING DATEEE : %@ REAL DATE TODAY %@",[df stringFromDate:strDate],[NSDate date]);
      return [df stringFromDate:strDate];

}
Run Code Online (Sandbox Code Playgroud)

我有以下格式的日期字符串 "2013-10-29T09:38:00"

当我试图给出NSDate对象时,它总是返回我的null日期.
所以我试图将该日期转换为yyyy-MM-dd HH:mm:ssZZZZ然后我将此日期传递给函数然后它只是打印整个日期..

如何解决这个问题呢?

//以下是我调用上述函数的代码

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"];
NSDate *date = [formatter dateFromString:[threadDict objectForKey:@"lastMessageDate"]];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ssZZZZ"];

NSString *date1 = [formatter stringFromDate:date];
NSDate *date_d = …
Run Code Online (Sandbox Code Playgroud)

objective-c nsdate relative-date nsdateformatter ios

39
推荐指数
5
解决办法
3万
查看次数

智能格式化时间跨度

我需要一种方法来将NSTimeInterval(以秒为单位的时间跨度)格式化为字符串,以产生类似"大约10分钟前","1小时,20分钟""小于1分钟"的内容.

-(NSString*) formattedTimeSpan:(NSTimeInterval)interval;
Run Code Online (Sandbox Code Playgroud)

目标平台是iOS.欢迎使用示例代码.

iphone formatting time objective-c

8
推荐指数
1
解决办法
3141
查看次数