Я работаю над приложением, которое имеет много изображений и графики. Существуют случаи, когда мне нужно повторно использовать значки, изображения и т. Д., Чтобы изменить цвет, используя функцию рендеринга изображений Xcode. Несмотря на все мои усилия, размер моего приложения огромный. Я также рассмотрел подход PaintCode, чтобы переместить изображения значков из активов в код. Но я задаюсь вопросом, будет ли хорошей идеей переместить усилия из времени компиляции для запуска? Не будет ли это слишком опасно для приложения слишком влиять на производительность приложения? Поскольку PaintCode завоевывает репутацию на рынке, я уверен, что это было бы обсуждено где-то.Икона активы против кода значка
ответ
Я использую подход PaintCode в своем проекте, и производительность хорошая. Но у меня нет большого количества значков на экране и не рисует много изображений одновременно. Вы могли бы повысить производительность при необходимости с помощью кеша для сгенерированных изображений (не забудьте очистить его при вызове didReceiveMemoryWarning
).
Если у вас есть много изображений, которые зависят от разрешения экрана, вы также можете попробовать использовать.
Спасибо за ваши взгляды @ Андре Богаевский. Будете ли вы также прокомментировать точку зрения о том, что производительность, которая подходит, лучше загружает изображение из пакета или создает это изображение из кода (например, paintCode). Таким образом, будет ясно, лучше ли выбрать полный подход PaintCode или нет? – SHN
Я использую подход PaintCode в основном для изображений, которые меняют цвет. Другие изображения, которые я использую из каталога активов. Поэтому я не могу быть полностью уверен, что использование этого подхода для всех графических активов даст хорошую производительность в вашем случае. Но я думаю, что все будет хорошо. Особенно если вы будете использовать кеш. –
Это не одно или тоже. Вы можете сгенерировать изображение в коде, а затем сохранить его для последующего использования. (Например, вы можете сгенерировать его и сохранить результирующее изображение на диск, где он не будет занимать память приложения, если и до тех пор, пока он не понадобится.)
Однако я сильно сомневаюсь, что ваши изображения имеют какое-либо отношение к размеру вашего приложения. Вы должны изучить встроенное приложение и узнать. Например, при отправке приложения в App Store размер в основном связан с битовым кодом, а не с закрытыми ресурсами. – matt
- 1. Икона проекта в Visual Studio
- 2. Икона для удаленных файлов
- 3. delphi: Какова цель икона?
- 4. Изменить Икона OptionPane диалоговых
- 5. Икона Tab QML
- 6. Икона Image Proxy в Perl
- 7. Jquery Mobile Загрузка Икона на подчиненной формы
- 8. против кода - неактивная подсветку кода
- 9. default_icon против создания значка Расширение Chrome
- 10. Chrome Extension: Икона из URL
- 11. Добавление Икона на кнопку ExtJS
- 12. Itunes Икона с Flex Mobile
- 13. Styling икона MenuItem на Android
- 14. Почему моя икона не перекрашивается?
- 15. Yii2 включает активы после кода, генерируемого виджетами
- 16. Генерация кода против Sprocs?
- 17. Библиотеки против исходного кода?
- 18. Алгоритм против кода
- 19. Повторение кода против readablility
- 20. Раскадровки против этого кода
- 21. против ExpectedException покрытия кода
- 22. Cmake против кода образца?
- 23. функции против повторного кода
- 24. Генератор кода против ORM
- 25. Производительность против чистого кода?
- 26. Читаемость кода против лаконичности
- 27. Производительность против качества кода
- 28. Rails приложения активы/активы и поставщика/активы
- 29. Активы и мои активы
- 30. Настройка значка прерывает DataGridView?
Этот ответ может быть полезен http://stackoverflow.com/ a/35369905/1753141 – Tricertops