萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> ios >> 設置IOS的UILabel動態高度方法

設置IOS的UILabel動態高度方法

   開始的時候按鈕事件中,可能寫的是這樣一段代碼:

  if (isExpand) {

  [lblBrief setNumberOfLines:2];

  lblBrief.text = [StringUtil subString:strBrief AndSubLength:90];

  [btnBrief setImage:[UIImage imageNamed:@"detailBriefDown"] forState:UIControlStateNormal];

  [btnBrief setImage:[UIImage imageNamed:@"detailBriefDown"] forState:UIControlStateHighlighted];

  }else{

  [lblBrief setNumberOfLines:0];

  lblBrief.text = strBrief;

  [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"] forState:UIControlStateNormal];

  [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"] forState:UIControlStateHighlighted];

  }

  可以通過setNumberOfLines:0,來讓概述的所以內容顯示出來,但如果,不計算所要顯示全部內容的總高度,label的寬高是不會自動增大的。

  else{

  [lblBrief setNumberOfLines:0];

  lblBrief.text = strBrief;

  CGSize constraint = CGSizeMake(self.view.frame.size.width - (15 * 2), 20000.0f);

  CGSize size = [strBrief sizeWithFont:[UIFont systemFontOfSize:10]constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];

  [brief setFrame:CGRectMake(15,160,size.width,size.height)];

  [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"]forState:UIControlStateNormal];

  [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"]forState:UIControlStateHighlighted];

  }

copyright © 萬盛學電腦網 all rights reserved