我想要將多個標籤放在另一個下面。使用AutoLayout進行大小設置時,我希望字體大小盡可能大。 adjustsFontSizeToFitWidth
僅適用於寬度,但我得到以下結果UILabel:使用AutoLayout將字體大小調整爲高度
2
A
回答
0
您可以通過調用(它可能是更容易一些具有佈局建成一個實現代碼如下管理重新計算你的內容高度,如果沒有的話):
[cell.contentView systemLayoutSizeFittingSize:UILayoutFittingExpandedSize].height;
我也有硬編碼此爲特定目的(添加爲UIFont類):
+ (int)contentSizeHeightForItem {
NSString *cat = [[UIApplication sharedApplication] preferredContentSizeCategory];
if([cat isEqualToString:UIContentSizeCategoryExtraSmall]) {
return 84;
} else if([cat isEqualToString:UIContentSizeCategorySmall]) {
return 86;
} else if([cat isEqualToString:UIContentSizeCategoryMedium]) {
return 88;
} else if([cat isEqualToString:UIContentSizeCategoryLarge]) {
return 92;
} else if([cat isEqualToString:UIContentSizeCategoryExtraLarge]) {
return 94;
} else if([cat isEqualToString:UIContentSizeCategoryExtraExtraLarge]) {
return 98;
} else if([cat isEqualToString:UIContentSizeCategoryExtraExtraExtraLarge]) {
return 102;
}
return 80;
}
0
如果您的字體是恆定的,則可以從字體計算標籤的必要高度,像這樣:
UIFont *font = [UIFont fontWithName:@"Helvetica" size:18];
UILabel *label = [UILabel new];
[label setFont:font];
[view addSubview:label];
double labelHeight = font.pointSize + fabs(font.descender);
[view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:[label(labelHeight)]"
options:0
metrics:@{@"labelHeight" : @(labelHeight)}
views:@{@"label" : label}]];
這將保證字體的完整高度將設置約束時予以考慮。
相關問題
- 1. AutoLayout動態調整大小UILabel的高度和寬度
- 2. UILabel高度取決於字體大小
- 3. 識別UILabel的調整字體大小
- 4. 自動調整UILabel字體大小
- 5. 如何調整字體大小以適合UILabel的高度和寬度
- 6. 無法將UILabel高度調整爲其文字高度
- 7. 調整NSMutableAttributedString的字體大小成正比UILabel的框架高度
- 8. Jquery字體大小調整爲div高度?
- 9. 使用AutoLayout和ScrollView調整大小類
- 10. 使用AutoLayout調整UIStackView的大小
- 11. 使用Autolayout調整大小的UICollectionViewCell
- 12. 將EditText調整爲字體大小
- 13. 使用Autolayout時自動調整UILabel
- 14. 將圖片大小調整爲最小寬度/高度
- 15. 調整大小UICollectionView高度
- 16. iFrame高度調整大小
- 17. iOS 7 Autolayout在字體大小較大時無法正確調整UILabel的大小
- 18. iPhone代碼爲auto uiLabel&uiTableViewCell字體改變時調整大小?
- 19. 使用JQuery調整窗口大小調整CSS字體大小
- 20. 根據UILabel內容調整UITableViewCell高度的大小
- 21. UITableViewAutomaticDimension不調整爲UILabel文本高度
- 22. 使用AutoLayout將UIView高度調整到其內容
- 23. 將DockPanel的大小調整爲DockZone的高度和寬度
- 24. 調整DIV高度可調整大小的iframe高度
- 25. 在textarea中調整字體大小以適合高度
- 26. UILabel - 自動調整大小
- 27. 使用cookie調整字體大小
- 28. 使用glutBitmapString調整字體大小
- 29. 當窗口高度調整大小時調整圖像大小
- 30. 如何設置字體大小以填充UILabel高度?
我創建了[AdjustableLabel](http://stackoverflow.com/a/33657604/1121497),它可以將文本大小調整爲整個幀,而不僅僅是寬度。 –