Очевидно, что это всегда компромисс между памятью / скоростью / размером.Имея это в виду, вы упомянули те же методы, которые я лично использую.Вот как я их вижу:
[изображения PNG] (для скорости) против [изображения JPEG] (для памяти / размера)
[КВАДРАТНЫЕ изображения] (для размера) против [ИНДИВИДУАЛЬНЫЕ изображения] (для памяти / скорости)
[УНИВЕРСАЛЬНЫЕ изображения] (для размера) против [ИНДИВИДУАЛЬНЫЕ изображения] (для памяти / скорости)
[ОБРЕЗАТЬ изображения] (для памяти / размера) против [РЕГУЛЯРНЫЕизображения] (для скорости)
[STREAM изображения] (для размера) против [ВКЛЮЧИТЬ изображения] (для памяти / скорости)
Что касается упаковщика изображений, Xcode выполняет собственное сжатие и извлечение данных.Я не очень много слышал о том, насколько это эффективно.Лично я просто открываю все в Preview и снова сохраняю, чтобы проверить, может ли оно быть меньше.
Метод номер один (только если это возможно, очевидно) наиболее точно использует растягиваемые изображения, либо подгоняя их к границам.или используя stretchableImageWithLeftCapWidth: topCapHeight:
(но, к сожалению, обычно это не вариант, только для граничных / градиентных фонов)