现在我正在做一个正常的主题并评论集成的应用程序。已经执行了发布主题,发布评论以及将我的评论指针设置到Topic类等功能。 但是现在过去几天给我带来麻烦的问题是,所显示的评论无法分类到每个主题,无论他们来自哪个不同主题,它们都聚集在一起。
我的PFObjects是主题和评论,完全是两个类。 主题有对象:标题,内容和用户。 注释具有对象:内容,父(指向主题的指针)和用户。
已经检查了解析数据库,看起来每个评论都有自己主题的对象ID中的相同父键。但仍然想知道为什么他们无法相应地展示。
这是我的编码。如果有人能借给我们,我将感激不尽。伸出援手。
var timelineCommentData:NSMutableArray = NSMutableArray()
func loadData(){
timelineCommentData.removeAllObjects()
var findCommentData:PFQuery = PFQuery(className: "Comment")
findCommentData.findObjectsInBackgroundWithBlock({
(objects:[AnyObject]!,error:NSError!)->Void in
if (error == nil) {
for object in objects {
self.timelineCommentData.addObject(object)
}
let array:NSArray = self.timelineCommentData.reverseObjectEnumerator().allObjects
self.timelineCommentData = array.mutableCopy() as NSMutableArray
self.tableView.reloadData()
}
})
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return timelineCommentData.count + 1 //+1 is for displaying the topic
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let identifier = indexPath.row == 0 ? "storyCell" : "CommentCell"
let cell = tableView.dequeueReusableCellWithIdentifier(identifier) as UITableViewCell
if let storyCell = cell as? TopicTableViewCell{
storyCell.titleLabel.text = topic?.objectForKey("title") as? String
storyCell.contentLabel.text = topic?.objectForKey("content") as? String
storyCell.timestampLabel.text = timeAgoSinceDate(topic!.createdAt, true)
}
storyCell.delegate = self
}
if let CommentCell = cell as? CommentsTableViewCell {
let comment:PFObject = self.timelineCommentData.objectAtIndex(indexPath.row - 1) as PFObject ///// Is anything wrong here??
var query = PFQuery(className: "Comment")
query.whereKey("parent", equalTo:topic)
query.findObjectsInBackgroundWithBlock({
(objects:[AnyObject]!,error:NSError!)->Void in
if (error == nil) {
CommentCell.commentLabel.text = comment.objectForKey("commentContent") as? String /////Or here
CommentCell.timeLabel.text = timeAgoSinceDate(comment.createdAt, true)
}
else{
println("no comment")
}
})
CommentCell.delegate = self
}
return cell
}