Question

Quel est le nom de la police du système par défaut sur l'iPhone?

Je voudrais récupérer ce pour la personnalisation d'un UIView.

Était-ce utile?

La solution

  

Pour le plus grand bonheur des puristes de police   partout, le système iPhone   interface utilise Helvetica ou un variant   de celui-ci.

     

L'iPhone original, iPhone 3G et   utilisation de l'interface du système iPhone 3GS   Helvetica. Comme première noté le   toujours excellent DaringFireball, la   iPhone 4 utilise une police subtilement révisée   appelé "Helvetica Neue."   DaringFireball note également que cette   le changement est lié à l'iPhone 4   afficher au lieu de l'iOS 4   système d'exploitation et plus iPhone   modèles fonctionnant sous iOS 4 Utilisation encore   Helvetica comme la police système.

     

modèles iPod libérés avant la   utiliser l'iPhone soit Chicago, Espy Sans,   ou Myriad et l'utilisation Helvetica après la   sortie de l'iPhone.

De http: / /www.everyipod.com/iphone-faq/iphone-who-designed-iphone-font-used-iphone-ringtones.html

iOS9 il a changé à San Fransisco . Voir http://developer.apple.com/fonts pour plus d'informations.

Autres conseils

Si vous faites la personnalisation programatic, ne pas coder en dur la police système. Utilisez UIFont systemFontOfSize:, UIFont boldSystemFontOfSize: et UIFont italicSystemFontOfSize ( documentation Apple de)

Cela est devenu particulièrement pertinent depuis iOS 7, qui a changé la police système Helvetica Neue.

est devenu super particulièrement pertinent puisque iOS 9, qui a changé la police système nouveau à San Francisco.

iPhone utilise "afaik Helvetica " par défaut

Swift

Police spécifique

Définition d'une police spécifique à Swift est fait comme ceci:

let myFont = UIFont(name: "Helvetica", size: 17)

Si vous ne connaissez pas le nom, vous pouvez obtenir une liste des noms des polices disponibles comme ceci:

print(UIFont.familyNames())

Ou une liste encore plus détaillée comme suit:

for familyName in UIFont.familyNames() {
    print(UIFont.fontNamesForFamilyName(familyName))
}

Mais les changements de police du système de la version à la version d'iOS. Il serait donc préférable d'obtenir dynamiquement la police système.

Police système

let myFont = UIFont.systemFontOfSize(17)

Mais nous avons codé en dur de la taille. Et si les yeux de l'utilisateur sont mauvais et ils veulent faire de la police plus grande? Bien sûr, vous pouvez définir un paramètre dans votre application pour l'utilisateur de changer la taille de la police, mais ce serait ennuyeux si l'utilisateur devait le faire séparément pour chaque application unique sur leur téléphone. Il serait plus facile de faire un changement dans les paramètres généraux ...

Police dynamique

let myFont = UIFont.preferredFont(forTextStyle: .body)

Ah, nous avons maintenant la police système à la taille choisie de l'utilisateur pour le style de texte nous travaillons avec. Ceci est la méthode recommandée pour le réglage de la police. Voir Soutenir Type Dynamique pour plus d'informations sur ce sujet.

Related

Vous pouvez toujours utiliser

UIFont *systemFont = [UIFont systemFontOfSize:12];
NSLog(@"what is it? %@ %@", systemFont.familyName, systemFont.fontName);

La réponse est:

Jusqu'à iOS 6

 Helvetica Helvetica

iOS 7

.Helvetica Neue Interface .HelveticaNeueInterface-M3

mais vous pouvez simplement utiliser Helvetica Neue

Je ne suis pas sûr qu'il ya un api pour obtenir le nom de la police par défaut du système. Donc, je viens d'obtenir le nom comme celui-ci:

    //get system default font
    UILabel *label = [[UILabel alloc] init];        
    fontname = label.font.fontName;
    [label release];

On dirait stupide, mais cela fonctionne.

Voici quelques mise à jour pour soutenir iOS 7 . Il a Dynamic Font Size maintenant.

  

Pour tout et toutes les applications que le soutien « Type dynamique », les utilisateurs peuvent sélectionner une   taille de la police dans iOS 7 qui fonctionne l'ensemble du système, simplement en visitant le   section « Général » sous « Paramètres » et en sélectionnant « Taille de la police. »

UIFont *dynamicFont  = [UIFont preferredFontForTextStyle:UIFontTextStyleBody];

et la liste des constantes, explication détaillée ici

NSString *const UIFontTextStyleHeadline;
NSString *const UIFontTextStyleSubheadline;
NSString *const UIFontTextStyleBody;
NSString *const UIFontTextStyleFootnote;
NSString *const UIFontTextStyleCaption1;
NSString *const UIFontTextStyleCaption2;

Catégorie UIFontSystemFonts UIFont ( UIInterface.h ) propose plusieurs tailles prédéfinies pratiques.

@interface UIFont (UIFontSystemFonts)
 + (CGFloat)labelFontSize;
 + (CGFloat)buttonFontSize;
 + (CGFloat)smallSystemFontSize;
 + (CGFloat)systemFontSize;
@end 

Je l'utilise pour les messages du chat (étiquettes) et il travaille bien quand je dois obtenir la taille des blocs de texte.

 [UIFont systemFontOfSize:[UIFont labelFontSize]];

Bonne programmation!

UIFont *systemFont = [UIFont systemFontOfSize:[UIFont systemFontSize]];

Cela vous donnera la police système avec la taille de la police par défaut du système appliqué pour les textes de l'étiquette par défaut.

Swift

Vous devriez toujours utiliser les paramètres par défaut du système et non de coder en dur le nom de la police parce que la police par défaut peut être modifiée par Apple à tout moment.

Il y a deux polices par défaut du système (normal, gras , italique ) avec différentes tailles (étiquette, bouton, autres):

let font = UIFont.systemFont(ofSize: UIFont.systemFontSize)
let font2 = UIFont.boldSystemFont(ofSize: UIFont.systemFontSize)
let font3 = UIFont.italicSystemFont(ofSize: UIFont.systemFontSize)

beaware que la taille de la police par défaut dépend de la vue cible (étiquette, bouton, autres)

Exemples:

let labelFont = UIFont.systemFont(ofSize: UIFont.labelFontSize)
let buttonFont = UIFont.systemFont(ofSize: UIFont.buttonFontSize)
let textFieldFont = UIFont.systemFont(ofSize: UIFont.systemFontSize)
  1. télécharger le fichier requis .ttf

  2. ajouter le fichier .ttf sous ressource faisceau de copie, vérifiez si le fichier TTF est ajouté sous ressource

  3. info.pllist ajouter le nom du fichier TTF tel qu'il est.

  4. ouvrir le livre de police ajouter le fichier .ttf dans le livre de police, sélectionnez Icône d'information, il vous trouvez le nom postscript.

  5. donne maintenant le nom Postscript au lieu de nom de la police

La police par défaut pour iOS est San Francisco. Vous pouvez consulter le lien pour plus détails

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top