UIFont-システムの細いフォントを取得する方法


98

UIFont通常のフォント(systemFontOfSize)または太字フォント(boldSystemFontOfSize)を取得するメソッドがありますが、ストーリーボードから「薄いシステムフォント」を取得するにはどうすればよいですか?

「システムシン」をUIFontContructorに渡しても機能しません。このコンストラクタは、非システムフォントに対してのみ機能します。

回答:


266

システムフォントの細い太さを使用できます。

UIFont.systemFont(ofSize: 34, weight: UIFontWeightThin)

サンフランシスコで利用可能なウェイトのリスト:

UIFontWeightUltraLight
UIFontWeightThin
UIFontWeightLight
UIFontWeightRegular
UIFontWeightMedium
UIFontWeightSemibold
UIFontWeightBold
UIFontWeightHeavy
UIFontWeightBlack

サンフランシスコのフォントの重み

iOS 11以降、 UIFontWeight*に名前が変更されましたUIFont.Weight.*。詳細については、https://developer.apple.com/documentation/uikit/uifont.weightをご覧ください


10
以下のための唯一のiOS 8.2以降、のthnx
Husam

32

iOS 8.2以降、以下を使用できますUIFont.systemFontOfSize(_ fontSize: CGFloat, weight weight: CGFloat)

UIFont.systemFontOfSize(19, weight: UIFontWeightLight)

iOS SDKが提供する重みの定数:

UIFontWeightUltraLight
UIFontWeightThin
UIFontWeightLight
UIFontWeightRegular
UIFontWeightMedium
UIFontWeightSemibold
UIFontWeightBold
UIFontWeightHeavy

iOSではiOSでシステムフォントを変更できるため(iOS 7ではHelvetica Neueで、今ではiOS 9ではSan Franciscoで行ったように)、システムフォントを使用する場合は、システムフォントを使用する方が、フォント名に基づいてフォントを作成するよりも優れています。 。

だから私が提案したいのは、あなたが使いたいフォントのTTFファイルをカスタムフォントとして使用し、アプリでカスタムフォントを使用することです。

これが私がAppleを嫌う特別な理由です。 Appleの言うことを絶対に行わないでください 。常に私たちが望むことをします。 Apple はすべてのOSのデフォルトフォントを変更し続けます。


7

また、同じフォントサイズを維持し、太さを変更する場合は、ターゲット要素のフォントサイズを使用します。例えば:

demoLabel.font = UIFont.systemFont(ofSize: demoLabel.font.pointSize, weight: UIFontWeightThin)

これにより、デフォルトのラベルのフォントサイズを維持し、太さを変更できます。

iOS 11以降、 UIFontWeightThinはに名前が変更されましたUIFont.Weight.thin。詳細については、https://developer.apple.com/documentation/uikit/uifont.weightをご覧ください


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.