Лучший способ автоматически изменить размер шрифта для разных устройств? - PullRequest
0 голосов
/ 22 октября 2018

Итак, у меня много приложений в моем приложении, и, как и все, у них есть автоматическая разметка, и она прекрасно работает, но для текста внутри них.Компоновка меток, как и ожидалось, но текст внутри них обрезается на небольших устройствах.

Чтобы избежать этого, я попытался использовать опцию AutoShrink в построении интерфейса, но это действительно испортилось, как вы можете видеть на рисунках:

Имитация iPhone 7 без автоматической усадки

Имитация iPhone SE без автоматической усадки

Имитация iPhone SE с автоматической усадкой

Итак, как вы можете видеть, все метки сжимаются по-разному, в результате чего тексты разных размеров нарушают гармонию и дизайн приложения.

Каков наилучший подход к этой ситуации?Как я могу это сделать, если мне нужно сжать одну этикетку, все они будут сжаты до одного размера?

1 Ответ

0 голосов
/ 22 октября 2018

Вы можете использовать AdjusttsFontSizeToFitWidth и imumScaleFactor :

label.adjustsFontSizeToFitWidth = true
label.minimumScaleFactor = 0.5

Это создает текст меньше для длинных строк.

Также вы можете добавитьбольше строк для метки, используя numberOfLines .
Я думаю, первое решение лучше для вас.

...