Skip to content

Conversation

paradi2e
Copy link

What is done

  • высота теперь выставляется не через расстояние между строк и не зависит от шрифта. меняются параметры minLineHeight и maxLineHeight

What to look for

  • если высота строки меньше высоты шрифта, то будет обрезание строк.

How to check

  • установить в проект под из ветки (добавить в podfile следующую строку:

pod 'SurfUtils/StringAttributes', :git => "https://github.com/surfstudio/iOS-Utils.git", :branch => 'IDPT-799-fix-string-attributes-lineHeight'

  • вывести на экран несколько лейблов с разными параметрами .lineHeight(CGFloat)

@paradi2e paradi2e self-assigned this Apr 19, 2022
Copy link
Contributor

@chausovSurfStudio chausovSurfStudio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

задам еще вопрос дизайнерам, чую подвох с фигмой, надо убедится что такой подход (указывание lineHeight, а не lineSpacing) на всех фигмовских проектах, что она именно так работает (типа если lineHeight == 20, то высота лейбла с одной строкой 20, двумя - 40, и тд... а то до правок этих, пока указывался lineSpacing, были разночтения - фигма тупо умножала кол-во строк на lineHeight, а у нас получалось, что кол-во строк умножить на lineHeight минус какое-то значение, потому что высота первой строки чуточку меньше. Вот хочу точно узнать как фигма работает в этом плане)

Alexander added 2 commits May 26, 2022 18:47
IDPT-958 changed usage target for lineHeight parameter on lineHeightMultiple
IDPT-958 added comments, tiny code refactoring
@chausovSurfStudio
Copy link
Contributor

протестил на отдельном проекте, опишу результаты

фиксируем высоту в 30pt, фиксируем шрифт и lineHeight, разрешаем уменьшать кегль шрифта если текст не влазит, одна строка, вводим длинный текст - кегль уменьшился
Снимок экрана 2022-05-27 в 10 59 01

фиксируем высоту в 30pt, фиксируем шрифт и lineHeight, разрешаем уменьшать кегль шрифта если текст не влазит, одна строка, вводим короткий текст - кегль уменьшился
Снимок экрана 2022-05-27 в 11 00 19

не фиксируем высоту, фиксируем шрифт и lineHeight, одна строка, вводим короткий текст - высота блока соответствует lineHeight
Снимок экрана 2022-05-27 в 11 02 13

не фиксируем высоту, фиксируем шрифт и lineHeight, много строк разрешаем, текст на две строки - высота блока соответствует lineHeight * кол-во строк
Снимок экрана 2022-05-27 в 11 03 17

убираем шрифт из атрибутов, но оставляем lineHeight - высота блока осталась
Снимок экрана 2022-05-27 в 11 04 28

вроде все прошло 🤷‍♂️

Copy link
Contributor

@Alelenka Alelenka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Работает...
Единственное я бы подумала как описать изменения для тех кто в старых проектах будет переходить что надо font добавить отдельно, а не в lineHeight, а то все сломается.
Может быть комментарий в readme или доп readme в папке Strings

@chausovSurfStudio
Copy link
Contributor

Работает... Единственное я бы подумала как описать изменения для тех кто в старых проектах будет переходить что надо font добавить отдельно, а не в lineHeight, а то все сломается. Может быть комментарий в readme или доп readme в папке Strings

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

Так что в релизе точно укажу, а там дальше будут задачки по настройке опрятного вида репозитория, тогда сделаем и changelog, и туда описания к последним релизам выкатим

@chausovSurfStudio chausovSurfStudio merged commit 9957a4f into master May 31, 2022
@chausovSurfStudio chausovSurfStudio deleted the IDPT-799-fix-string-attributes-lineHeight branch May 31, 2022 08:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants