0

我有一个带有 ScrollView 和不同元素的 DetailContentView。

例如,我必须以编程方式将 3 个标题和 3 个文本添加到名为“thisShadowBox”的 UIView 中。

我怎样才能以更简单的方式添加元素?这是我的第一次尝试,但在此之后我需要文本的高度来放置第二个元素,对吧?

UITextView *addThisText = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 305, 200)];
[thisShadowBox addSubview:addThisDescription];

我希望有另一种方式。类似于 HTML/CSS 中的内容:

<div style="background:#CCCCCC">
 <p>Textblock1</p>
 <p>Textblock2</p>
</div>

在 UIWebView 中使用 HTML 代码并不是真正的替代方案。

4

1 回答 1

0
- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(NSLineBreakMode)lineBreakMode; // NSTextAlignment is not needed to determine size

使用该方法获取字符串内容的高度,通过简单的数学加法逻辑实现

使用此方法获取高度

-(CGFloat)getStringHeightOfString:(NSString *)inputString withFont:(UIFont *)font with:(CGSize)maxSize
{
  CGSize size = [inputString sizeWithFont:font
                               constrainedToSize:maxSize
                                   lineBreakMode:NSLineBreakByWordWrapping];
    return size.height;

}
于 2013-02-05T17:45:50.480 回答