2012-04-07 22 views
9

Ho giocato con font personalizzati su iOS e ho scoperto che la maggior parte di esso non è visibile su nessuno dei miei dispositivi.Il carattere personalizzato non viene visualizzato sul dispositivo, ma sul simulatore

  1. Ho aggiunto il carattere alla radice del file di progetto.
  2. Aggiunto al file info.plist sotto l'array o "Caratteri forniti dall'applicazione"
  3. Verificare che la distinzione tra maiuscole e minuscole sia del file originale sia di quello che ho aggiunto al file info.plist sia la stessa.
  4. Utilizzato [playMenuBtn.titleLabel setFont:[UIFont fontWithName:@"fontname" size:40]]; per far funzionare il carattere.

Quando eseguo la mia app nel simulatore, tutto funziona correttamente e funziona. Tuttavia, non appena lo eseguo su un dispositivo fisico, visualizza il carattere predefinito con le dimensioni predefinite.

se uso:
UIFont *font = [UIFont fontWithName:@"VINCASTENCIL" size:20]; NSLog(@"Font:%@", font);

Poi il simulatore ritorna: 2012-04-07 01:10:41.544 AppName[47412:f803] Font:<UICFFont: 0x683e040> font-family: "VINCA STENCIL"; font-weight: normal; font-style: normal; font-size: 20px

Dove, come il dispositivo torna: 2012-04-07 00:42:56.358 AppName[5079:707] Font:(null)

Ho provato di tutto, tra cui cercare tutti i nomi che FontBook mi dice che il font potrebbe essere nominato. So che è gratis e non c'è una licenza su di esso.

Qualsiasi aiuto sarebbe molto apprezzato poiché mi sta facendo impazzire e non voglio davvero usare le immagini per tutti questi problemi, perché la localizzazione sarebbe un vero problema!

+0

Il font è stato confezionato con l'app iOS? – Sirens

+0

'[UIFont familyNames]' elenca il carattere che hai aggiunto? – MrMage

+0

quali estensioni hanno i file dei font? TTF o TTF? – NeverBe

risposta

20

Giusto, sono appena riuscito a farlo funzionare. Tutto quello che stavo facendo era corretto, ma per qualche motivo non aggiungeva il mio file font a "Targets" -> "Build Phases" -> "Copy Bundle Resources". Aggiungendolo manualmente a questo elenco, il carattere viene quindi visualizzato sul dispositivo.

Questa è la seconda volta che questo progetto non ha aggiunto un file qui automaticamente (lo ha fatto in precedenza con una classe che ho aggiunto, e non lo ha fatto) quindi penso che sia qualcosa di sbagliato nel mio progetto, o un bug in Xcode .

Grazie a tutti per i vostri suggerimenti e aiuto. :-D

+0

Questo è un po 'quello che mi dispiace D: – Sirens

+0

@TheDeveloper yeah era la ragione per cui l'ho controllato alla fine Grazie: :-) – Baza207

+0

Sembra che xcode non aggiunga i file TTF alle risorse del bundle di default, a differenza ad esempio png di. Lo stesso problema qui, – Chris

0

Sì, segui tutte le indicazioni sopra menzionate e dovresti stare bene. Qualcos'altro da tenere d'occhio: maiuscole e minuscole. Nel file * .plist e Fonts provided by application. Il simulatore potrebbe ignorare le maiuscole, ma il dispositivo no. Ad esempio, "Facebook" non è lo stesso di "FaceBook". (Questo ha portato al font che funziona nel simulatore, ma non al dispositivo!)

Problemi correlati