我正在构建一个使用 UICollectionView 来显示一系列博客文章的应用程序。
当用户点击帖子时,会推送一个 DetailView 以显示帖子的内容。
在详细视图中,可以看到帖子图片、文本等。还有一个按钮可以显示评论。
我希望用户能够点击comments
按钮并加载一个 UITableView,它将显示为该帖子编写的所有评论。这是我无法实现的部分。
我用界面生成器创建了一个 UITableView 并使用 segue 将它连接到 DetailView 。点击按钮时comments
,我得到一个空表。
在我的 DetailView 上点击评论按钮会触发:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"showComments"]) {
NSDictionary *post = self.detailItem;
NSArray *commentThread = [post objectForKey:@"comment"];
// how do I pass the commentThread to the UITableView at the other end of the segue?
}
}
任何想法如何完成这项工作?很高兴发布更多代码。
这是我的CommentViewController.m
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"commentCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
NSDictionary *comment = [self.commentArray objectAtIndex:indexPath.row];
NSString *commentText = [comment objectForKey:@"comment_text"];
NSString *commentAuthor = [comment objectForKey:@"comment_author"];
cell.textLabel.text = commentText;
return cell;
NSLog(@"%@", comment);
}
和CommentViewController.h
#import <UIKit/UIKit.h>
@interface CommentViewController : UITableViewController {
NSArray *commentArray;
}
@property (strong, nonatomic) id commentArray;
@end