Управление памятью на 500 этикеток - PullRequest
0 голосов
/ 14 июля 2011

У меня есть несколько сотен отдельных UILabel с.Это работает, но это явно болото в системе.Приложение работает медленно до тех пор, пока другой метод не выпустит это представление со всеми метками.

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

Я предполагаю, что лучший способ сделать это - «нарисовать» текст на экране, используя шрифт Open GL или что-то в этом роде.Любые другие предложения или советы?

Ответы [ 2 ]

1 голос
/ 14 июля 2011

Вы также можете проверить Дополнения к NSString: Дополнения NSString UIKit
Пример использования:

- (void)drawRect:(CGRect)rect
{
        NSString *temperature = [NSString stringWithFormat:@"%@\n%d / %d", weatherItem.place, high, low];
        [[UIColor blackColor] set];
        [temperature drawInRect:CGRectMake(15.0, 5.0, 50.0, 40.0) withFont:[UIFont systemFontOfSize:11.0]];
}
0 голосов
/ 14 июля 2011

Используйте Core Graphics, чтобы нарисовать текст на CGContext в вашем drawRect методе. См. Раздел «Текст для рисования» документов CGContext

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