Парадигма рисования Android!

Я занимаюсь разработкой приложений для Android с 3 до 4 месяцев. Я наивен, но в значительной степени знаком со всеми основами разработки приложений для Android. Однако мне было очень больно разрабатывать приложение с большим количеством изображений. Говоря об изображениях, я имею в виду, что одно из моих приложений имеет от 10 до 13 изображений (достаточно мало, чтобы соответствовать размеру экрана). Проблема в том, что я должен сделать разные копии, сделав,

  • HDPI — поддержка высокого разрешения
  • MDPI — поддержка среднего разрешения
  • LDPI — поддержка низкого разрешения

Я придумал идею,

IDEA : My idea is to actually have only MDPI images in drawable folder, When my  
application will installed first time, I want my application to detect what type of 
resolution is supported by device? After knowing which resolution is supported one of my 
built in method will either use a MDPI version(images), if handset supports it or else 
it will scale up or scale down my images and stores into internal storage for future    
reference. When user uninstall my application I will remove these images from internal 
storage.

Теперь эта идея вызвала вопрос,

Вопрос:

  1. Осуществима ли эта идея? и программно возможно?
  2. Если это так, должен ли я действительно беспокоиться об однократных вычислительных накладных расходах?
  3. Есть ли какой-либо механизм (третья сторона), который может облегчить мою проблему? (Я ненавижу фотошоп и масштабирование всех этих изображений)

Любая экспертная помощь или руководство будет большим одолжением!

Заранее спасибо!

Крио


person TeaCupApp    schedule 16.06.2011    source источник


Ответы (2)


Я не очень понимаю, зачем ты это делаешь. Система уже в основном делает это за вас. Вы не должны обязаны указывать разные изображения для разных плотностей экрана, система просто дает вам возможность сделать так, чтобы ваше приложение выглядело наилучшим образом. Если вы предоставите только одно изображение, система соответствующим образом масштабирует его для вас в зависимости от плотности телефона.

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

person fleetway76    schedule 16.06.2011
comment
Серьезно! Оооо хватка! Говоря, что я наивен, я действительно имел в виду это. Ну, у меня сложилось впечатление, что система не масштабируется вверх или вниз. Я должен сделать это сам и сохранить его внутри drawable-hdpi, drawable-mdpi и drawable-ldpi. Спасибо, Fleetway76 - person TeaCupApp; 16.06.2011

Ознакомьтесь с этой статьей. Он описывает, как Android обрабатывает имена каталогов для ресурсов. Также взгляните на это — как Android выберите наилучшее соответствие для имени каталога. Если вы хотите использовать один и тот же ресурс для всех dpi, просто поместите его в папку для рисования по умолчанию.

person Mojo Risin    schedule 16.06.2011
comment
Спасибо, моджо, я знал это, но я хотел улучшить разрешение программно, а не делать это в фотошопе, а затем поместить эти изображения в HDPI, MDPI и MDPI (для лучшего результата) - person TeaCupApp; 16.06.2011