2013-05-19 13 views
10

Mi piacerebbe utilizzare il font OpenSans su un UILabel, ma non viene mostrato nel simulatore iOS. Tutto ciò che appare è il carattere di sistema predefinito. Ho:Font OpenSans che non funziona nel simulatore iOS

1) di inserimento dei file di progetto + selezionato per copiare nella cartella app.

2) Aggiunto a Info.plist.

info.plist

3) Xcode aggiunti automaticamente tutti i font alla mia cartella fasi di creazione.

4) pulito il progetto + costruito di nuovo.

E ancora non si presenta! Nel mio codice, ho questo:

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

Qualcuno sa che cosa sta causando questo bizzarro bug?

+3

Si noti che 'fontWithName' richiede il nome del font, non il nome del file. Il nome del font potrebbe essere "OpenSans ExtraBold" o simile, puoi verificarlo se apri il font nell'applicazione "Libro Font". –

+1

potrebbe essere che stai scrivendo il nome del font sbagliato, stampare tutti i font configurati e controllare il nome due volte.! –

risposta

9

Risolto, era a causa di questo errore minore.

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

Extrabold, non ExtraBold. Ho aperto Font Viewer, come raccomandato, e ha mostrato che sotto PostScript Name.

Ora ho utilizzato #define per inserire un nome di stringa di carattere e utilizzarlo nell'intera applicazione per evitare errori utente e stringhe letterali nel mezzo del mio codice.

Problemi correlati