2013-02-05 29 views
0

我有一個帶有滾動視圖和不同元素的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代碼並不是真正的選擇。

回答

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; 

} 

編碼愉快:)