2012-05-07 6 views
10

iOSアプリのtableViewのsystemFontSizeがの場合、常にはtextLabelと同じですか?これはスタイルに熟していますか?iOS Foundation:システムフォントサイズ

たとえば、私がNSLog(@"%f",[UIFont systemFontSize]);の場合、14.0になります。これはいつも同じですか?

さらに、フォントファミリを変更せずにフォントサイズを変更するにはどうすればよいですか(自分のフォントに自分のフォントがあると仮定します)。

私が試した:

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

をしかしUIFontはいつも私フォント名/家族のためにしたいです。どのように私はそれを避けることができますし、私のすべての画面に1つのフォントを持って、サイズだけを変更する?

+ (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. 

、あなたがこのようなフォントファミリせずにフォントサイズを変更することができます:

答えて

25

システムフォントには、以下のように記述されている

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

UIFont [ 'などのiOSの7以来利用できる新しいオプションがありますが、 preferredFontForTextStyle:UIFontTextStyleBody] 'システムのワイドフォントの変更を監視するための通知' UIContentSizeCategoryDidChangeNotification'。 –

1

をちょうど上記の回答に追加します。上記のメソッドは、UIFontクラスのメンバーです。デフォルトのボタンフォントサイズを取得するには...

float defaultFontSize = [UIFont buttonFontSize]; 
2

システムのフォントサイズは必ずしも同じではありません。 iOS 7からはDynamic Typeがあります。ユーザーはシステム設定で好みのフォントサイズを設定できます。これは、アプリがフォントサイズを取得して設定するための推奨方法です。

Interface Builderでは、フォント設定でBodyまたはTitle 1のようなものを選択できます。実際のサイズは、ユーザーのシステム設定に従って調整されます。プログラム的にはUIFont.preferredFont(forTextStyle:)を使用します。 3.

参照iOSの10とスウィフトでこれを行うの詳細についてはthis postを参照してください。また、

+0

@AdilSoomro、私は良いドキュメントの交換リンクを見つけることができませんでしたが、私はすべてのリンクをより良いものに置き換えました。知らせてくれてありがとうございます。 – Suragch

関連する問題