iOS: đặt kích thước phông chữ của UILabel theo chương trình


83

Tôi đang cố gắng đặt kích thước phông chữ của UILabel. Không có vấn đề gì giá trị tôi đặt mặc dù kích thước văn bản dường như không thay đổi. Đây là mã tôi đang sử dụng.

[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]];

Câu trả lời:


161

Hãy thử [UIFont systemFontOfSize:36]hoặc [UIFont fontWithName:@"HelveticaNeue" size:36] tức là[[self titleLabel] setFont:[UIFont systemFontOfSize:36]];


2
setFont không được dùng nữa trong iOS 10.2
TheJeff

76

Mục tiêu-C:

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

Nhanh:

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

chỉ thay đổi kích thước phông chữ của UILabel.


1
Rõ ràng, setFont không được dùng nữa, vì vậylabel.font = // Whatever font.
Rudolf Real

@FabricioPH làm thế nào nếu tôi muốn đặt label.font = // whatever currently system's fontphông chữ?
Chen Li Yong

1
@ChenLiYong Tôi không còn phát triển iOS nữa. Có thể Googling sẽ hiển thị một số kết quả có liên quan về việc thiết lập hoặc tải phông chữ của hệ thống hiện tại. google.com/?#q=ios%20system%20font
Rudolf Real

22

Swift 3.0 / Swift 4.2 / Swift 5.0

labelName.font = labelName.font.withSize(15)

16

Nếu bạn đang tìm kiếm mã nhanh:

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

6

Mã này hoạt động hoàn hảo đối với tôi.

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

Tôi cũng vậy, [[self titleLabel] setFont: [UIFont systemFontOfSize: 36]]; không và tôi không biết tại sao
Leon

4

Trong Swift 3.0, bạn có thể sử dụng mã này bên dưới:

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

3

VÌ nó không có họ phông chữ với tên @"System"do đósize:36 cũng sẽ không hoạt động ...

Kiểm tra các phông chữ có sẵn trong xcode trong trình kiểm tra thuộc tính và thử


1

Đối với 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;

 }

Cũng có thể là vấn đề về tư cách thành viên mục tiêu phông chữ của bạn.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.