Objective-C中的详细视图控制器

时间:2013-06-11 08:19:49

标签: iphone ios objective-c

当我不知道内容有多长/多短时,我在理解如何为表视图实现详细的视图控制器时遇到了一些麻烦。

想想一个RSS应用程序。主表视图显示所有项目,当您单击时,您应该获取该项目/文章的内容。当表格单元格具有静态高度时,如何使用表格视图解决此问题?

我正在为应用程序使用storyboard和segues。

2 个答案:

答案 0 :(得分:0)

对于您的详细信息视图,您可以将部分或全部内容放在UIScrollView中。

顺便说一下,表格单元格高度不是静态的 - 只需实现heightForRowAtIndexPath来计算模型数据的高度。如果单元格包含文本,则需要计算给定所需字体的大小。 (Theres是关于如何在StackOverflow here上执行此操作的答案)

答案 1 :(得分:0)

您可以使用以下方法计算行和标签的动态高度。请在详细视图中使用。我认为它将解析您的查询。

heightForRowAtIndexPath中使用它来设置单元格高度,在cellForRowAtIndexPath中使用它来设置标签的高度。

-

(CGFloat) GetHeightFoText:(NSString *)aStrTxt  FoWidth:(int)aIntWidth ForFontSize:(int)aIntFntSize
{
    CGSize maximumLabelSize = CGSizeMake(aIntWidth,9999);
    CGSize expectedLabelSize = [text sizeWithFont:[UIFont systemFontOfSize:aIntFntSize]
                                constrainedToSize:maximumLabelSize
                                    lineBreakMode:UILineBreakModeWordWrap];
    return expectedLabelSize.height;
}