iOS:以编程方式设置UILabel的字体大小

我试图设置一个UILabel的字体大小。 尽pipe文字大小似乎没有改变, 这是我正在使用的代码。

[self setTitleLabel:[[UILabel alloc] initWithFrame:CGRectMake(320.0,0.0,428.0,50.0)]]; [[self contentView] addSubview:[self titleLabel]]; UIColor *titlebg = [UIColor clearColor]; [[self titleLabel] setBackgroundColor:titlebg]; [[self titleLabel] setTextColor:[UIColor blackColor]]; [[self titleLabel] setFont:[UIFont fontWithName:@"System" size:36]]; 

尝试[UIFont systemFontOfSize:36][UIFont fontWithName:@"HelveticaNeue" size:36] ie [[self titleLabel] setFont:[UIFont systemFontOfSize:36]];

Objective-C的:

 [label setFont: [label.font fontWithSize: sizeYouWant]]; 

迅速:

 label.font = label.font.fontWithSize(sizeYouWant) 

只是改变UILabel的字体大小。

如果你正在寻找swift代码:

 var titleLabel = UILabel() titleLabel.font = UIFont(name: "HelveticaNeue-UltraLight", size: 20.0) 

这段代码完全适合我。

  UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(15,23, 350,22)]; [label setFont:[UIFont systemFontOfSize:11]]; 

它是因为没有字体家族的名称@"System"因此size:36也不会工作…

在属性检查器中检查xcode中可用的字体并尝试

对于iOS 8

  static NSString *_myCustomFontName; + (NSString *)myCustomFontName:(NSString*)fontName { if ( !_myCustomFontName ) { NSArray *arr = [UIFont fontNamesForFamilyName:fontName]; // I know I only have one font in this family if ( [arr count] > 0 ) _myCustomFontName = arr[0]; } return _myCustomFontName; } 

在Swift 3.0中,你可以使用下面的代码:

 let textLabel = UILabel(frame: CGRect(x:containerView.frame.width/2 - 35, y: containerView.frame.height/2 + 10, width: 70, height: 20)) textLabel.text = "Add Text" textLabel.font = UIFont(name: "Helvetica", size: 15.0) // set fontName and Size textLabel.textAlignment = .center containerView.addSubview(textLabel) // containerView is a UIView