データベースから必要なデータを取得するために 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];
}