Подтвердить что ты не робот

Что быстрее: создание градиента программно с помощью Quartz2D или просто импорт изображения?

Предположим, что файловое пространство на iphone не является проблемой, что будет лучше? Будет ли заметная разница в скорости/гладкости между двумя?

4b9b3361

Ответ 1

В то время как специально не нацелены на градиенты (довольно шаблоны) этот учебник от Ray Wenderlich имеет базовую информацию внизу с образами против ядра Графический рисунок.

TL; Драйвер Core Graphics, по-видимому, немного быстрее, когда используется в этом контексте.

Для того, что стоит, я делаю как можно больше рисунков в своем приложении с использованием Core Graphics, включая такие вещи, как радиальные градиенты и текстурированные UILabel. Как разработчик с ограниченными навыками дизайна, я нахожу, что часто получаю гораздо лучшие результаты, рисуя этот путь, чем возиться с использованием чего-то вроде Photoshop.

Еще одно преимущество использования Core Graphics заключается в том, что вы можете легко менять вещи "на лету", например, анимацию градиента, что было бы невероятно дорого, если бы вы делали это исключительно с изображениями.

Ответ 2

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