Da iOS 9.0, il carattere di sistema utilizza cifre proporzionali. Se si desidera ottenere cifre a spaziatura fissa, è disponibile un font variante che è possibile ottenere utilizzando +[UIFont monospacedDigitSystemFontOfSize:weight:]
. Funziona solo con il font di sistema.
Se si desidera lavorare con un altro carattere, si tenta di chiedere una variante monospazio, ma potrebbe non esserlo. Dato un UIFont
, è possibile richiedere il suo fontDescriptor
, quindi chiedere che per un descrittore di carattere simile che è monospaced (non solo per le cifre) utilizzando -[UIFontDescriptor fontDescriptorWithSymbolicTraits:]
e UIFontDescriptorTraitMonoSpace
. È quindi possibile creare un nuovo font passando il nuovo descrittore di font a +[UIFont fontWithDescriptor:size:]
.
Tuttavia, dubito che ci sia una variante monospaziale di Impact. Non è adatto al tuo scopo.
fonte
2015-11-19 09:59:53
assegnare un vincolo di larghezza fissa a un'etichetta con la più ampia possibilità. Ad esempio 33:33:33 dovrebbe essere completamente contenuto in esso. Assegna all'etichetta un po 'di colore di sfondo. Risolverà il tuo problema in una certa misura –
Usando il textkit puoi specificare che tutti i numeri devono essere di uguale larghezza. – milo526