Antworten:
Zur Freude von Schriftpuristen überall verwendet die iPhone-Systemschnittstelle Helvetica oder eine Variante davon.
Die ursprüngliche Systemschnittstelle für iPhone, iPhone 3G und iPhone 3GS verwendet Helvetica. Wie der immer ausgezeichnete DaringFireball zum ersten Mal bemerkte, verwendet das iPhone 4 eine subtil überarbeitete Schriftart namens "Helvetica Neue". DaringFireball stellt außerdem fest, dass diese Änderung eher mit dem iPhone 4-Display als mit dem iOS 4-Betriebssystem zusammenhängt und ältere iPhone-Modelle mit iOS 4 weiterhin Helvetica als Systemschriftart verwenden.
Vor dem iPhone veröffentlichte iPod-Modelle verwenden entweder Chicago, Espy Sans oder Myriad und nach der Veröffentlichung des iPhone Helvetica.
Von http://www.everyipod.com/iphone-faq/iphone-who-designed-iphone-font-used-iphone-ringtones.html
Für iOS9 wurde es in San Francisco geändert . Weitere Informationen finden Sie unter http://developer.apple.com/fonts .
Wenn Sie programmgesteuert anpassen, codieren Sie die Systemschriftart nicht fest. Verwendung UIFont systemFontOfSize:
, UIFont boldSystemFontOfSize:
und UIFont italicSystemFontOfSize
( Apple - Dokumentation ).
Dies ist besonders relevant seit iOS 7, das die Systemschriftart in Helvetica Neue geändert hat.
Dies hat sich Super besonders relevant , da iOS 9, die die Systemschriftart geändert wieder nach San Francisco.
UIFont
Instanzen der Systemschriftart in den angegebenen Größen und geben die Systemschriftarten unabhängig von zukünftigen iOS-Updates immer zurück.
Helvetica
... das jetzt zu tun.
Spezifische Schriftart
Das Festlegen einer bestimmten Schriftart in Swift erfolgt folgendermaßen:
let myFont = UIFont(name: "Helvetica", size: 17)
Wenn Sie den Namen nicht kennen, können Sie eine Liste der verfügbaren Schriftnamen wie folgt abrufen:
print(UIFont.familyNames())
Oder eine noch detailliertere Liste wie diese:
for familyName in UIFont.familyNames() {
print(UIFont.fontNamesForFamilyName(familyName))
}
Die Systemschriftart ändert sich jedoch von Version zu Version von iOS. Daher ist es besser, die Systemschrift dynamisch abzurufen.
Systemschriftart
let myFont = UIFont.systemFontOfSize(17)
Aber wir haben die Größe fest codiert. Was ist, wenn die Augen des Benutzers schlecht sind und er die Schrift größer machen möchte? Natürlich können Sie in Ihrer App eine Einstellung vornehmen, damit der Benutzer die Schriftgröße ändert. Dies wäre jedoch ärgerlich, wenn der Benutzer dies für jede einzelne App auf seinem Telefon separat tun müsste. Es wäre einfacher, nur eine Änderung an den allgemeinen Einstellungen vorzunehmen ...
Dynamische Schriftart
let myFont = UIFont.preferredFont(forTextStyle: .body)
Ah, jetzt haben wir die Systemschrift in der vom Benutzer gewählten Größe für den Textstil, mit dem wir arbeiten. Dies ist die empfohlene Methode zum Festlegen der Schriftart. Weitere Informationen hierzu finden Sie unter Unterstützung des dynamischen Typs .
Sie können immer verwenden
UIFont *systemFont = [UIFont systemFontOfSize:12];
NSLog(@"what is it? %@ %@", systemFont.familyName, systemFont.fontName);
Die Antwort ist:
Bis zu iOS 6
Helvetica Helvetica
iOS 7
.Helvetica Neue Interface .HelveticaNeueInterface-M3
aber du kannst es einfach benutzen Helvetica Neue
.SFUIText-Regular
alssystemFont.familyName
Ich bin nicht sicher, ob es eine API gibt, um den Standardnamen der Systemschriftart zu erhalten. Also bekomme ich einfach den Namen so:
//get system default font
UILabel *label = [[UILabel alloc] init];
fontname = label.font.fontName;
[label release];
Sieht dumm aus, aber es funktioniert.
[UIFont systemFontOfSize:[UIFont labelFontSize]];
Siehe meine Antwort unten.
Hier ist ein Update zur Unterstützung von iOS 7 . Es hat Dynamic Font Size
jetzt.
Für alle Apps, die "Dynamic Type" unterstützen, können Benutzer eine systemweite Schriftgröße in iOS 7 auswählen, indem sie einfach den Abschnitt "Allgemein" unter "Einstellungen" aufrufen und "Schriftgröße" auswählen.
UIFont *dynamicFont = [UIFont preferredFontForTextStyle:UIFontTextStyleBody];
Und Konstantenliste, ausführliche Erklärung finden Sie hier
NSString *const UIFontTextStyleHeadline;
NSString *const UIFontTextStyleSubheadline;
NSString *const UIFontTextStyleBody;
NSString *const UIFontTextStyleFootnote;
NSString *const UIFontTextStyleCaption1;
NSString *const UIFontTextStyleCaption2;
Die Kategorie UIFontSystemFonts für UIFont ( UIInterface.h ) bietet mehrere praktische vordefinierte Größen.
@interface UIFont (UIFontSystemFonts)
+ (CGFloat)labelFontSize;
+ (CGFloat)buttonFontSize;
+ (CGFloat)smallSystemFontSize;
+ (CGFloat)systemFontSize;
@end
Ich benutze es für Chat-Nachrichten (Labels) und es funktioniert gut, wenn ich die Größe von Textblöcken erhalten muss.
[UIFont systemFontOfSize:[UIFont labelFontSize]];
Viel Spaß beim Codieren!
UIFont *systemFont = [UIFont systemFontOfSize:[UIFont systemFontSize]];
Dadurch erhalten Sie die Systemschriftart mit der Standard-Systemschriftgröße, die standardmäßig für die Beschriftungstexte angewendet wird.
Schnell
Sie sollten immer die Systemstandards verwenden und den Schriftnamen nicht fest codieren, da die Standardschrift von Apple jederzeit geändert werden kann.
Es gibt einige Systemstandardschriftarten (normal, fett , kursiv ) mit unterschiedlichen Größen (Beschriftung, Schaltfläche, andere):
let font = UIFont.systemFont(ofSize: UIFont.systemFontSize)
let font2 = UIFont.boldSystemFont(ofSize: UIFont.systemFontSize)
let font3 = UIFont.italicSystemFont(ofSize: UIFont.systemFontSize)
Beaware, dass die Standardschriftgröße von der Zielansicht abhängt (Beschriftung, Schaltfläche, andere)
Beispiele:
let labelFont = UIFont.systemFont(ofSize: UIFont.labelFontSize)
let buttonFont = UIFont.systemFont(ofSize: UIFont.buttonFontSize)
let textFieldFont = UIFont.systemFont(ofSize: UIFont.systemFontSize)
Download der erforderlichen .ttf-Datei
Fügen Sie die .ttf-Datei unter Kopierpaketressource hinzu, und überprüfen Sie, ob die ttf-Datei unter Ressource hinzugefügt wurde
Fügen Sie in info.pllist den Namen der ttf-Datei so hinzu, wie er ist.
Öffnen Sie nun das Schriftbuch. Fügen Sie die .ttf-Datei in das Schriftbuch ein und wählen Sie das Informationssymbol aus. Dort finden Sie den Namen des Postskripts.
Geben Sie nun den Postscript-Namen anstelle des Schriftartnamens an
Die Standardschriftart für iOS ist San Francisco. Sie können den Link für weitere Details verweisen