OpenSans font not working in iOS simulator

2019-02-21 15:27发布

问题:

I'd like to use the OpenSans font on a UILabel, but it's not showing up in the iOS simulator. All that appears is the default system font. I have:

1) Added files to project + selected to copy to app folder.

2) Added to Info.plist.

3) Xcode automatically added all fonts to my build phases folder.

4) Cleaned the project + built it again.

And it still doesn't show up! In my code, I have this:

self.itemPrice = [[UILabel alloc] initWithFrame:CGRectMake(230.0, 30.0, 75.0, 30.0)];
        self.itemPrice.adjustsFontSizeToFitWidth = YES;
        self.itemPrice.font = [UIFont fontWithName:@"OpenSans-ExtraBold" size:13.0f];
        self.itemPrice.textAlignment = NSTextAlignmentCenter;
        self.itemPrice.text = [NSString stringWithFormat:@"%@", [Formatters formatPrice:self.item.price]];
        [self.slidingDetailScrollView addSubview:self.itemPrice];

Anyone know what is causing this bizarre bug?

回答1:

Fixed it, it was because of this minor error.

self.itemPrice.font = [UIFont fontWithName:@"OpenSans-Extrabold" size:13.0f];

Extrabold, not ExtraBold. I opened up Font Viewer, as recommended, and it showed that under PostScript Name.

I have now used #define's to place a font string name in there and use that throughout my application to avoid user error and literal strings in the middle of my code.