这是一个博客应用程序,我遇到的问题是帖子的布局及其评论。
理想情况下,布局应该是这样的(版本 1):
父级是 UIScrollView,您看到的所有其他元素都在其中。底部的 UITabelView 接收评论线程。
这可行,但问题在于评论 UITableView。我想我可以关闭它的滚动,让它根据评论的数量垂直“增长”。但是在几行之后,内容被剪裁了。这是因为剩余的行没有在 UIScrollView 的垂直大小内呈现。
我已经阅读了 SO 以取消 UIScrollView - 而是在 UITableView 中构建整个东西。在顶部创建一个自定义单元格以容纳 UIImageView,在下方创建另一个自定义单元格用于发布文本等。
版本 2
我的问题是:如何发送 JSON 提要的特定部分来填充自定义单元格,然后遍历填充下部单元格的注释?
例如,下面的代码将评论发送/迭代到版本 1 中的评论 UITableView。
但是我如何将发布图像或发布文本发送到版本 2 中的自定义单元格?
有更好的方法吗?非常感谢任何形式的建议。
DetailViewController.h
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"commentCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
NSDictionary *post = self.detailItem;
NSArray *commentThread = [post objectForKey:@"comment"];
NSDictionary *comment = [commentThread objectAtIndex:indexPath.row];
NSString *commentText = [comment objectForKey:@"comment_text"];
NSString *commentAuthorName = [comment objectForKey:@"comment_author_name"];
cell.textLabel.text = commentText;
cell.detailTextLabel.text = commentAuthorName;
return cell;
}
JSON
...
{
"post_id": "1463",
"post_title": null,
"post_text": "dffsdjdflkjklk dlfkjsdlfkj",
"comment": [
{
"comment_author_name": "2162",
"comment_text": "yuiyuiiopiop",
},
{
"comment_author_name": "2163",
"comment_text": "tyutyutyutyuu",
},
{
"comment_author_name": "2164",
"comment_text": "sdfsertertr",
},
]
},
...