UILabel字体大小?
Posted
技术标签:
【中文标题】UILabel字体大小?【英文标题】:UILabel font size? 【发布时间】:2012-05-15 13:45:24 【问题描述】:我似乎无法使用以下代码修改 UILabel 的字体大小:
itemTitle.font = [UIFont systemFontOfSize:25];
当我将数字 25 增加到更大的值时,它似乎只在标签上添加了一个上边距,因此将文本向下推了很多,以至于文本在底部被截断或完全溢出。
我在其他地方有另一个 UILabel,systemFontOfSize 为 25,它比 itemTitle 文本小得多。这是怎么回事? 25不应该是一个绝对值吗?
我很困惑如何以编程方式更改 uilabels 的字体大小。
【问题讨论】:
【参考方案1】:检查您的标签是否未设置为自动调整大小。在 IB 中,它被称为“Autoshrink”,位于字体设置旁边。以编程方式,它被称为adjustsFontSizeToFitWidth
。
【讨论】:
【参考方案2】:我已通过以下代码修改了 UILabel:
label.font=[label.font fontWithSize:25];
试试这个,看看它是否适用于你的情况???
【讨论】:
label.font = label.font.fontWithSize(25)
用于 Swift
斯威夫特 3 label.font = label.font.withSize(25)
【参考方案3】:
尝试更改标签框架大小的高度和宽度,以免文本被剪切。
[label setframe:CGRect(x,y,widht,height)];
【讨论】:
【参考方案4】:[label setFont:[UIFont systemFontOfSize:9]];
这对我有用。
【讨论】:
【参考方案5】:**您可以通过这些属性设置字体大小**
timedisplayLabel= [[UILabel alloc]initWithFrame:CGRectMake(70, 194, 180, 60)];
[timedisplayLabel setTextAlignment:NSTextAlignmentLeft];
[timedisplayLabel setBackgroundColor:[UIColor clearColor]];
[timedisplayLabel setAdjustsFontSizeToFitWidth:YES];
[timedisplayLabel setTextColor:[UIColor blackColor]];
[timedisplayLabel setUserInteractionEnabled:NO];
[timedisplayLabel setFont:[UIFont fontWithName:@"digital-7" size:60]];
timedisplayLabel.layer.shadowColor =[[UIColor whiteColor ]CGColor ];
timedisplayLabel.layer.shadowOffset=(CGSizeMake(0, 0));
timedisplayLabel.layer.shadowOpacity=1;
timedisplayLabel.layer.shadowRadius=3.0;
timedisplayLabel.layer.masksToBounds=NO;
timedisplayLabel.shadowColor=[UIColor darkGrayColor];
timedisplayLabel.shadowOffset=CGSizeMake(0, 2);
【讨论】:
【参考方案6】:以编程方式调整标签文本大小的非常简单但有效的方法:-
label.font=[UIFont fontWithName:@"Chalkduster" size:36];
:-)
【讨论】:
【参考方案7】:这对我有用:
sequencerPlayLabel.font = [UIFont fontWithName:kTypeFont size:kTypeFontSize];
-丰富的
【讨论】:
【参考方案8】:上面的答案有很大帮助。
这是 Swift 版本。
@IBOutlet weak var priceLabel: UILabel!
*.... lines of code later*
self.priceLabel.font = self.priceLabel.font.fontWithSize(22)
【讨论】:
【参考方案9】:这对我有用
斯威夫特 3
label.font = label.font.fontWithSize(40.0)
斯威夫特 4
label.font = label.font.withSize(40.0)
【讨论】:
【参考方案10】:对于 Swift 3.1、Swift 4 和 Swift 5,如果您只想更改标签的字体大小:
let myLabel : UILabel = ...
myLabel.font = myLabel.font.withSize(25)
【讨论】:
【参考方案11】:在C#中这些方法可以解决问题,在UIkit中这些方法是可用的。
Label.Font = Label.Font.WithSize(5.0f);
Or
Label.Font = UIFont.FromName("Copperplate", 10.0f);
Or
Label.Font = UIFont.WithSize(5.0f);
【讨论】:
以上是关于UILabel字体大小?的主要内容,如果未能解决你的问题,请参考以下文章
根据自动布局更改 UILabel 中的字体大小(swift)