フォントを変更したい UI ボタンがあります。フォントを変更する前に、デバッガーでボタン コードを実行し、タイトル ラベルのフォントを出力します。
po acceptButton.titleLabel.font
<UICTFont: 0xc61ae70> font-family: ".HelveticaNeueInterface-M3"; font-weight: normal; font-style: normal; font-size: 18.00pt
次に、次のコード行を実行します。
[acceptButton.titleLabel setFont:[LNSocialAppearance fontHelveticaNeueRegularWithSize:10]];
LNSocialAppearance は、すぐに応答する便利なメソッドです。
return [UIFont fontWithName: @"Helvetica Neue Regular" size: points];
その後、titleLabel のフォントを再度出力します。
po acceptButton.titleLabel.font
<UICTFont: 0xc390f50> font-family: ".HelveticaNeueInterface-M3"; font-weight: normal; font-style: normal; font-size: 17.00pt
何が起きてる?フォントが 1 つだけ下がったのはなぜですか? UIButton で許可されている最小フォントはありますか?これは動的タイプと関係がありますか?
更新: Omer の提案によると、setFont:[UIFont systemFontOfSize:12]] を使用すると正しく動作します。しかし、システム フォントの使用を強制されたくはありません。Helvetica Neue フォント ファミリに制限はありますか? もしそうなら、どうすれば最小/最大フォントサイズを知ることができますか?
ただし、フォントサイズを17に設定しているため、20を指定しても、それ以上大きくなることはありません。