Даже если ваша клетка на самом деле такая простая (фоновое изображение и метка), есть некоторые вещи, на которые стоит обратить внимание
Кэширование изображений
Это очевидная вещь - если вы используете одно и то же изображение везде, загрузите его один раз в UIImage и используйте его повторно. Даже если система сама кеширует ее, прямое использование уже загруженной не должно повредить.
Быстрый расчет
Еще одна довольно очевидная вещь - сделать подсчет высоты и содержания максимально быстрым. Не выполняйте синхронные выборки (сетевые вызовы, чтение с диска и т. Д.).
Альфа-канал в изображении
Что дорого при рисовании - это прозрачность. Поскольку фон вашей ячейки ничего не скрывает, убедитесь, что вы сохранили изображение без альфа-канала. Это экономит много времени на обработку.
Прозрачная этикетка
То же самое относится и к метке в верхней части фонового представления, к сожалению, ее непрозрачность может испортить внешний вид вашей ячейки, но это зависит от изображения.
Пользовательская ячейка
В целом, создание подклассов UITableViewCell
и реализация drawRect:
самостоятельно выполняется быстрее, чем построение иерархии подпредставлений. Вы можете сделать свое изображение переменной класса, которую используют все экземпляры. В drawRect:
вы нарисуете изображение и текст поверх него.
Проверка композитинга
В симуляторе есть инструмент для выделения деталей, которые рендерится дорого из-за прозрачности (зеленый в порядке, красный - в альфа-смешении). Его можно найти в меню отладки: «Цветные смешанные слои»