[英]Resize UILabel view IOS
嗨,我是iPhone開發的新手。 我想調整標簽尺寸。 我知道以前曾多次問過這個問題,但這些答案對我沒有用。 我不知道我在做什么錯。 我做了以下事情:我正在使用自動布局。 我還將行數定義為0。然后要調整標簽大小,我做了以下操作
NSString *text = @"NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID “;
_sampleText.text = text;
CGRect newSize = _sampleText.frame;
newSize.size.height = 200.0f;
_sampleText.frame = newSize;
我嘗試了[_sampleText sizeToFit];
這也是。
但這對我不起作用。 任何人都可以幫助我。 需要幫忙。 謝謝。
我嘗試了這個
CGSize maximumSize = CGSizeMake(_sampleText.frame.size.width, 999);
CGSize expectedSize = [text boundingRectWithSize: maximumSize options: NSStringDrawingUsesLineFragmentOrigin
attributes: @{ NSFontAttributeName:[UIFont fontWithName:_sampleText.font.fontName size:_sampleText.font.pointSize] } context: nil].size;
[_sampleText setText:text];
[_sampleText sizeToFit];
CGRect rect = _sampleText.frame;
rect.size.height = expectedSize.height;
_sampleText.frame = rect;
忘記了文字並調整了文字大小,我無法自行調整Uilabel的大小
CGRect rect = CGRectMake(0, 0, 50, 50);
[_sampleText setFrame:rect];
上面的代碼在viewDidLoad中。
所以我發現了一些東西。 如果禁用自動布局選項,則可以正常工作。 但是,如果要與自動布局啟用一起使用怎么辦?
首先calculate size
以fit
UILabel
:
NSString *text = @"NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID NILESH KASHID";
CGSize maximumSize = CGSizeMake(_sampleText.frame.size.width, 999);
CGSize expectedSize = [text sizeWithFont:_sampleText.font constrainedToSize:maximumSize lineBreakMode:NSLineBreakByWordWrapping];
[_sampleText setText:text];
[_sampleText sizeToFit];
CGRect rect = _sampleText.frame;
rect.size.height = expectedSize.height;
_sampleText.frame = rect;
NSString *text = @"";
CGSize boundingSize = CGSizeMake(300, 1500.0f);
CGSize requiredSize = [text sizeWithFont:[UIFont systemFontOfSize:12]
constrainedToSize:boundingSize
lineBreakMode:NSLineBreakByWordWrapping];
CGFloat requiredHeight = requiredSize.height;
int textHeight = requiredHeight+90;
NSLog(@"%d",textHeight);
return textHeight;
試試這個...一切順利!!!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.