2012-08-16 144 views
0

我有uilabel,這個uilabel應該根據文本的長度在行中增長。無論如何,我不知道該怎麼做。我已經在網上搜索了不同的解決方案,但沒有找到任何可以工作的內容。目前我在這裏這樣做:uilabel的動態尺寸

size_label = [[UILabel alloc] init]; 
size_label.frame = CGRectMake(0, 0, 180, 10000); 
size_label.font = [UIFont systemFontOfSize:15]; 
size_label.text = some_long_text; 
size_label.numberOfLines = 10000; 
[size_label sizeToFit]; 
NSLog(@"size_label.frame.size.height = %f", size_label.frame.size.height); 

NSLog的結果始終是19.這不是我想要的,因爲文本將至少需要像150像素。該的UILabel的

  1. (寬度不得更改)
  2. 文本長度和uifont

  1. 行數:

    我得到這取決於怎麼辦

  2. uilabel的高度

這樣一切都顯示出來,文字恰好適合。

回答

1

FOLL代碼可能有助於AUTOSIZE標籤

UILabel *size_label = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 0.0, 180.0, 40.0); 
size_label.font = [UIFont systemFontOfSize:15]; 
size_label.text = some_long_text; 
size_label.numberOfLines = 0; 

[size_label sizeToFit];