2012-04-07 23 views
9

Bawiłem się czcionkami niestandardowymi w iOS i większość z nich została wymyślona poza czcionką niestandardową, która nie będzie wyświetlana na żadnym z moich urządzeń.Niestandardowa czcionka nie jest wyświetlana na urządzeniu, ale działa na symulatorze.

  1. Dodałem czcionkę do katalogu głównego pliku projektu.
  2. Dodano go do pliku info.plist pod tablicą lub "Czcionki dostarczone przez aplikację"
  3. Sprawdź, czy wielkość liter zarówno oryginalnego pliku, jak i tego, co dodałem do pliku info.plist, jest taka sama.
  4. Zastosowano [playMenuBtn.titleLabel setFont:[UIFont fontWithName:@"fontname" size:40]];, aby czcionka działała.

Po uruchomieniu aplikacji w Symulatorze wszystko wygląda dobrze i działa. Jednak zaraz po uruchomieniu na urządzeniu fizycznym wyświetla domyślną czcionkę z domyślnym rozmiarem.

Jeśli używam:
UIFont *font = [UIFont fontWithName:@"VINCASTENCIL" size:20]; NSLog(@"Font:%@", font);

Następnie powraca symulatora: 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

Gdzie przywróceniu urządzenia: 2012-04-07 00:42:56.358 AppName[5079:707] Font:(null)

Próbowałem wszystkiego, w tym stara wszystkie nazwy, które FontBook mówi mi, że czcionkę można nazwać. Wiem, że to nic nie kosztuje i nie ma na nim licencji.

Każda pomoc będzie bardzo doceniana, ponieważ doprowadza mnie to do szału i naprawdę nie chcę używać obrazów dla tych wszystkich, ponieważ lokalizacja byłaby wtedy bólem!

+0

Czy czcionka jest pakowana w aplikację na system iOS? – Sirens

+0

Czy "[UIFont familyNames]" wyświetla czcionkę, którą dodałeś? – MrMage

+0

jakie rozszerzenia mają pliki czcionek? TTF lub ttf? – NeverBe

Odpowiedz

20

Dobrze, właśnie udało mi się to zadziałać. Wszystko, co robiłem, było poprawne, ale z jakiegoś powodu nie było dodawania pliku czcionki do "Targetów" -> "Fazy budowania" -> "Kopiuj zasoby pakietu". Ręczne dodanie go do tej listy powoduje wyświetlenie czcionki na urządzeniu.

To już drugi raz, że ten projekt nie dodał tutaj automatycznie pliku (zrobiono to wcześniej z klasą, którą dodałem, a tak się nie stało), więc myślę, że to jest coś nie tak z moim projektem lub błąd w Xcode .

Dziękuję wszystkim za sugestie i pomoc. :-D

+0

To jest coś, co ja smutny D: – Sirens

+0

@TheDeveloper tak było powodem, dla którego to sprawdziłem na końcu.Dzięki! :-) – Baza207

+0

Wygląda na to, że xcode nie dodaje plików TTF do zasobów pakietu domyślnie, w przeciwieństwie do np. png. Ten sam problem tutaj, – Chris

0

Tak, postępuj zgodnie ze wskazówkami powyżej i powinieneś być w porządku. Coś innego na co zwracać uwagę: wielkość liter. W pliku * .plist i Fonts provided by application. Symulator może zignorować wielkie litery, ale urządzenie tego nie zrobi. Na przykład "Facebook" to nie to samo, co "FaceBook". (Doprowadziło to do działania czcionki w symulatorze, ale nie na urządzeniu!)

Powiązane problemy