2013-12-19 64 views
0

我正在做一個項目,如果文本不適合UITextView框架,我正在其中顯示一個圖像。僅當UITextView的內容視圖大於其名氣時才顯示圖像

我使用下面的代碼

if (self.textView.contentSize.height >= self.TextView.bounds.size.height) 
{ 
    self.imageView.hidden = NO; 
} 

我使用自動佈局也。它是否會導致此類問題

還有一件事是,當我打印NSLog時,contentSize.height的值不會根據UITextView顯示的文本而改變。

回答

0

是的,如果你將文本分配到TextView的,並在viewControllers viewDidLoad中的下一個指令檢查它的大小,它不會work.It只會給你什麼contentSize您設置。

檢查ViewController的viewDidAppear的contentSize,它會起作用。
它爲我工作。
希望這會有所幫助,

+0

謝謝,這對我有效。 – varsim

1

您可以使用此方法根據所使用

+ (CGSize) calculateLabelHeightWith:(CGFloat)width text:(NSString*)textString 
{ 
    CGSize maximumSize = CGSizeMake(width, 9999); 
    CGSize size = [textString sizeWithFont:[UIFont fontWithName:@"Helvetica" size:24] 
         constrainedToSize:maximumSize 
          lineBreakMode:UILineBreakModeWordWrap]; 
    return size; 
} 

你需要知道

  • 寬度文本費爾德的字體大小,檢查多行文本的高度
  • 字體
  • 字體大小

iOS7

CGRect textRect = [text boundingRectWithSize:<text Feild Size> 
           options:NSStringDrawingUsesLineFragmentOrigin 
           attributes:@{NSFontAttributeName:[UIFont stuff here]} 
           context:nil]; 

CGSize size = textRect.size; 
+0

[textString sizeWithFont:constrainedToSize:lineBreakMode:]; 已棄用iOS 7.0中https://developer.apple.com/library/iOS/documentation/UIKit/Reference/NSString_UIKit_Additions/Reference/Reference.html – varsim

+0

我不好謝謝你,我更新了答案 – amar

+0

謝謝你快速回復 – varsim

相關問題