Ios 不同PFQueryTable显示新项目的方法
因此,我研究了Anypic()源代码,并试图复制这个想法 我有一个自定义单元格,这个单元格有一个setIsNew:isNew,就像Anypic教你的一样。我的PFQueryTableViewController具有与lastRefresh属性相关的所有代码 但是,在objectsDidLoad方法中更新lastRefresh,该方法在重新加载单元格之前调用 视图控制器:Ios 不同PFQueryTable显示新项目的方法,ios,iphone,uitableview,refresh,parse-platform,Ios,Iphone,Uitableview,Refresh,Parse Platform,因此,我研究了Anypic()源代码,并试图复制这个想法 我有一个自定义单元格,这个单元格有一个setIsNew:isNew,就像Anypic教你的一样。我的PFQueryTableViewController具有与lastRefresh属性相关的所有代码 但是,在objectsDidLoad方法中更新lastRefresh,该方法在重新加载单元格之前调用 视图控制器: - (void)viewDidLoad { [super viewDidLoad]; self.lastRef
- (void)viewDidLoad
{
[super viewDidLoad];
self.lastRefresh = [[NSUserDefaults standardUserDefaults] objectForKey:@"lastRefresh"];
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
PFObject *obj = self.objects[indexPath.section];
...
if ([self.lastRefresh compare:obj.createdAt] == NSOrderedAscending) {
[cell setIsNew:YES];
} else {
[cell setIsNew:NO];
}
return cell;
}
-(void)objectsDidLoad:(NSError *)error
{
[super objectsDidLoad:error];
self.lastRefresh = [NSDate date];
[[NSUserDefaults standardUserDefaults] setObject:self.lastRefresh forKey:@"lastRefresh"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
自定义单元格:
- (void)setIsNew:(BOOL)isNew
{
if (isNew) {
[self.mainView setBackgroundColor:[UIColor colorWithRed:1 green:0.9216 blue:0.5608 alpha:0.5]];
} else {
[self.mainView setBackgroundColor:[UIColor whiteColor]];
}
}
结果一事无成。lastRefresh将始终晚于object.createdAt,因此所有单元格的外观将完全相同
我做错了什么?还是有另一个聪明的解决方案
如果这是一个noob问题,请向您表示感谢和抱歉。
对象。createdAt
是您在数据库中创建对象的日期。为什么lastresh
总是早于object.createdAt
?我指的是越早,越近。FYI在谈论日期时,“早”通常指的是过去的某个日期,“晚”指的是发生在另一个日期之后的日期。