はMM:ss:SS
(分、秒、センチ秒)の形式でタイマーの出力を表示しますが、左から右に例えば1センチ秒の変化 - 「11」は「33」よりも狭い。iOS数字が変わるとタイマーUILabelが揺れるのを防ぐ
これを軽減する方法はありますか?私はそれをセンタリングしようとしましたが、固定幅を与えましたが、彼らは助けに見えませんでした。
はMM:ss:SS
(分、秒、センチ秒)の形式でタイマーの出力を表示しますが、左から右に例えば1センチ秒の変化 - 「11」は「33」よりも狭い。iOS数字が変わるとタイマーUILabelが揺れるのを防ぐ
これを軽減する方法はありますか?私はそれをセンタリングしようとしましたが、固定幅を与えましたが、彼らは助けに見えませんでした。
システムフォントは比例数字を使用しています。モノスペースの数字が必要な場合は、+[UIFont monospacedDigitSystemFontOfSize:weight:]
を使用して取得できる変形フォントがあります。これは、システムフォントに対してのみ機能します。
別のフォントを使用する場合は、等幅のバリアントを要求してみてください。 UIFont
が与えられた場合は、fontDescriptor
を要求してから、-[UIFontDescriptor fontDescriptorWithSymbolicTraits:]
とUIFontDescriptorTraitMonoSpace
を使用して、等幅フォントの数字(数字だけではない)の同様のフォント記述子を要求することができます。新しいフォント記述子を+[UIFont fontWithDescriptor:size:]
に渡すことで、新しいフォントを作成できます。
しかし、私はImpactのモノスペースの変形があるとは思っていません。あなたの目的には適していません。
使用固定幅フォント、固定幅フォントまたは非比例フォントとも呼ばれる固定幅フォントは、文字と文字がそれぞれ同じ水平量を占めるフォントです。モノスペースフォントの例には、Courier、Courier New、Lucida Console、Monaco、Consolasがあります。
Courier、Courier NewのみがXcodeプロジェクトに含まれています。しかし、ええ、それらのフォントは、任意の文字ごとに等しい幅を持っています。いいね – coolcool1994
は、幅広い可能性が最も高いラベルに固定幅制約を与えます。 ex 33:33:33が完全に含まれるべきである。ラベルに背景色を付けます。あなたの問題をある程度まで解決します –
テキストキットを使うと、すべての数字が等しい幅になるように指定することができます。 – milo526