Как я могу узнать отображаемый текст в UILabelView? - PullRequest
0 голосов
/ 21 мая 2010

Как узнать отображаемый текст в UILabelView?У меня большой текст, и у меня будет 3 метки, которые представляют 3 столбца приложения для iPad, например, NYTimes.Когда я помещаю большой текст в первый столбец (UILabelView), мне нужно знать, сколько текста там отображается.

Если U предлагает другое решение, пожалуйста, дайте мне знать.Charly

1 Ответ

0 голосов
/ 21 мая 2010

То, что вы просите, - это способ измерения текста.IPhone SDK документирует способ узнать, насколько большой объем текста, но не сколько текста помещается в заданном пространстве.Вы можете использовать первое, чтобы сделать второе итеративно.

Найдите в UIStringDrawing.h следующий метод:

- (CGSize)sizeWithFont:(UIFont *)font forWidth:(CGFloat)width lineBreakMode:(UILineBreakMode)lineBreakMode;

Используйте этот метод для выполнения (предпочтительно двоичного) поиска на другой длинеподстроки вашей строки, пока вы не найдете подстроку, которая соответствует определенной высоте.Теперь вы выяснили, сколько текста может отобразить первая UILabel.Повторите для каждого столбца.

Вы также можете использовать CTTypesetter в CoreText, но это 3.2 вперед.

...