2012-05-07 12 views
10

Ich würde gerne wissen, ob SystemFontSize in iOS App TableView ist immer die gleiche für textLabel? Dies hängt vom Stil ab?iOS Foundation: System Schriftgröße

Zum Beispiel wenn ich NSLog(@"%f",[UIFont systemFontSize]); bekomme ich 14,0. Ist das immer das Gleiche?

Und was noch: Wie kann ich Schriftgröße ändern, ohne die Schriftart-Familie zu ändern (vorausgesetzt, dass ich meine eigenen Schriftarten in meinem Plist habe).

Ich habe versucht:

cell.textLabel.font = [UIFont fontWithName:@"Sansation-Light" size:12.0]; 

Aber UIFont wollen immer für mich Fontname/Familie. Wie kann ich das vermeiden und eine Schriftart auf meinem Bildschirm haben und nur die Größe ändern?

Antwort

25

System-Fonts werden beschreiben, wie folgend:

+ (CGFloat)labelFontSize;//Returns the standard font size used for labels. 
+ (CGFloat)buttonFontSize;//Returns the standard font size used for buttons. 
+ (CGFloat)smallSystemFontSize;//Returns the size of the standard small system font. 
+ (CGFloat)systemFontSize;//Returns the size of the standard system font. 

und Sie können ohne die Schriftfamilie, wie dies die Schriftgröße ändern:

cell.textLabel.font = [UIFont systemFontOfSize:14]; 
+0

Es gibt neue Optionen zur Verfügung, da iOS 7, wie '[UIFont preferredFontForTextStyle: UIFontTextStyleBody] 'auch eine Benachrichtigung' UIContentSizeCategoryDidChangeNotification', um die systemweiten Änderungen der Schriftart zu überwachen. –

1

einfach auf die oben genannte Antwort hinzuzufügen. Die obigen Methoden sind Mitglieder der UIFont-Klasse. So erhalten Sie die Standardschaltfläche Schriftgröße ...

float defaultFontSize = [UIFont buttonFontSize]; 
2

System Schriftgrößen sind nicht immer gleich. Ab iOS 7 gibt es Dynamic Type. Benutzer können ihre bevorzugte Schriftgröße in den Systemeinstellungen festlegen. Dies ist die empfohlene Methode für Apps, um ihre Schriftgrößen jetzt zu erhalten und festzulegen.

Im Interface Builder können Sie unter den Font-Einstellungen Dinge wie Body oder Title 1 auswählen. Die tatsächliche Größe wird entsprechend den Systemeinstellungen des Benutzers angepasst. Programmgesteuert verwenden Sie UIFont.preferredFont(forTextStyle:). Siehe this post, um weitere Informationen über das Tun dies in iOS 10 und Swift 3.

Siehe auch

+0

@AdilSoomro, ich konnte keinen guten Dokumentationsaustauschlink finden, aber ich habe alle Links durch bessere ersetzt. Danke für die Information. – Suragch

Verwandte Themen