2016-04-18 7 views
1

Ich weiß, dass die Schrift von UINavigationBar zum Ändern er einfachUINavigationBar Schrifttyp ändern, während die Standardgröße zu halten

self.navigationController!.navigationBar.titleTextAttributes = [NSFontAttributeName: UIFont(name: "MavenProBold", size: 15)!, NSForegroundColorAttributeName: UIColor.whiteColor()] 

Tho tun, ich versuche nur die Schriftart zu ändern, und iOS Standardschriftart zu halten Größe (was ich denke, er ist dynamisch unter den Geräten). Irgendwelche Vorschläge?

Antwort

1

Wenn Sie die Schriftart ändern, müssen Sie eine Schriftgröße angeben. Normalerweise müssen Sie dies manuell tun.

Wenn Sie die Größe einer anderen Schriftart, die Sie sehen, passen wollen, sagen wir in einem anderen UILabel, die Sie tun können:

CGFloat fontSize = self.label.font.pointSize; // obj-c 
let fontSize = CGFloat(label.font.pointSize) // swift 

Und dann die Größe der Schrift weisen Sie setzen diese sein.

UPDATE

Nach einer gründlichen Untersuchung, die gemeinsame Schriftgröße des UINavigationBar ist 34px, die 17 in Ihrem Xcode-Editor ist. Denken Sie daran, dass Sie diese Ansicht manuell überschreiben können, aber das ist die Standardschriftgröße.

+0

Das Problem ist, dass ich nicht den Standard-Font-Wert der Navigationsleiste erhalten kann. –

+0

So können Sie sich darauf beziehen: http://ivomynttinen.com/blog/the-ios-7-design-cheat-sheet/ aber das ist hart codiert, und ich weiß, dass Sie versuchen, etwas dynamisches zu bekommen, lassen Sie mich behalten schauend. AFAIK die Schriftgröße ist fest codiert, wobei die Proportionen den Größenklassen entsprechen, aber ich würde es gerne überprüfen. – dokun1

+0

Wir müssen einen Weg finden, um auf UILabel des Titels zuzugreifen. Vielleicht ist das der richtige Weg? –

Verwandte Themen