PF Отношение с постом CurrentUser в TableView
Я использую Parse.com для извлечения необходимых мне данных из базы данных.
В моем табличном представлении у меня есть изображение, которое меняет цвет в соответствии с этим запросом, который вызывает отчет CurrentUser с отображаемыми сообщениями.
-(void)QueryForUpVote {
PFQuery *QueryForUpVotePost = [PFQuery queryWithClassName:FF_POST_CLASS];
[QueryForUpVotePost whereKey:@"UP_Vote" equalTo:[PFUser currentUser]];
[QueryForUpVotePost findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
UpVoteCurrentUser = [[NSMutableArray alloc] init];
for (PFObject *ObjectForUpVote in objects) {
[UpVoteCurrentUser addObject:ObjectForUpVote];
}
[self.FFTableView reloadData];
}
}];
}
В Tableview я добавил это, чтобы убедиться, что если есть пост, который имеет отношение к CurrentUser (как своего рода социальные сети)
if ([[PFUser currentUser] objectForKey:@"UP_Vote"] ) {
CellaIMG.MedalCount.image = [UIImage imageNamed:@"FFIMG_Medal_Blu"];
CellaIMG.AddGoPoint.tag = indexPath.row;
[CellaIMG.AddGoPoint addTarget:self action:@selector(AddGoPointAction:) forControlEvents:UIControlEventTouchUpInside];
} else {
CellaIMG.MedalCount.image = [UIImage imageNamed:@"FFIMG_Medal"];
CellaIMG.AddGoPoint.tag = indexPath.row;
[CellaIMG.AddGoPoint addTarget:self action:@selector(DecrementGoPoint:) forControlEvents:UIControlEventTouchUpInside];
}
Моя текущая проблема заключается в том, что TableView не распознает отношения, в которых CurrentUser отображается с сообщением... Предоставленное мной изображение должно стать серым или синим, когда пользователь имеет определенные отношения с сообщением... Где я нахожусь? делать неправильно?
MutableArray используется в:
- (void)AddGoPointAction:(id)sender {
PFObject *AddGoPointToPost = [self.UpVoteCurrentUser objectAtIndex:[sender tag]];
[AddGoPointToPost incrementKey:FF_POST_GOPOINTPOST byAmount:[NSNumber numberWithInt:1]];
PFRelation *RelationForVote = [AddGoPointToPost relationforKey:@"UP_Vote"];
[RelationForVote addObject:[PFUser currentUser]];
[AddGoPointToPost saveInBackground];
[self.FFTableView reloadData];
}
- (void)DecrementGoPoint:(id)sender {
PFObject *AddGoPointToPost = [self.UpVoteCurrentUser objectAtIndex:[sender tag]];
[AddGoPointToPost incrementKey:FF_POST_GOPOINTPOST byAmount:[NSNumber numberWithInt:-1]];
PFRelation *RelationForVote = [AddGoPointToPost relationforKey:@"UP_Vote"];
[RelationForVote removeObject:[PFUser currentUser]];
[AddGoPointToPost saveInBackground];
[self.FFTableView reloadData];
}
1 ответ
Изображения только одного цвета, потому что ваш тест:
if ([[PFUser currentUser] objectForKey:@"UP_Vote"] ) {
Только проверяет, есть ли у текущего пользователя upvote. Он ничего не делает, чтобы проверить, имеет ли его текущий пользователь отношение к "текущему" upvote (это будет в вашем массиве, используемом для заполнения табличного представления).
Вам нужно изменить логику, чтобы проверить отношения.