Некорректная ширина, возвращаемая sizeWithAttributes для разных локалей - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть UIButton, размер которого вычисляется на основе NSString self.currentTitle. self.titleLabel - это UIButton Label. Использование API ниже:

CGFloat textSizeWidth = [self.currentTitle sizeWithAttributes:@{NSFontAttributeName : self.titleLabel.font}].width;

Эта возвращаемая ширина текста в дальнейшем используется для установки ширины UIButton, поскольку это тихий вариант. Это хорошо работает для английской локали, но когда я пытаюсь использовать японские символы, возвращаемая ширина кажется неправильной, так как метка кнопки усекается. self.titleLabel - это строка NSString, поэтому я предполагаю, что она должна работать и на японском языке. Любые входные данные при передаче этого будут полезны.

1 Ответ

0 голосов
/ 18 ноября 2018

Это происходит, когда все символы китайские / японские. Возможный обходной путь - использовать дополнительный пробел в строке, и теперь возвращаемая длина верна

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...