Android drawable范例!

时间:2011-06-16 08:18:16

标签: java android image-processing drawable

我从3到4个月开始开发Android应用程序。我天真,但几乎暴露了关于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. 是否有任何机制(第三方)可以缓解我的问题? (我讨厌Photoshop和扩展所有这些图像)
  4. 任何专家帮助或指导都将是一大帮助!

    提前致谢!

    克里奥文

2 个答案:

答案 0 :(得分:3)

我真的不明白为什么要这样做。系统已基本为您完成此操作。您不 为不同的显示密度指定不同的图像,系统只是让您有机会使您的应用程序看起来最好。如果您只提供单个图像,系统将根据手机的密度为您适当缩放。

至于帮助您自己缩放图像以进行打包,您可以查看图像magick。这是一个功能强大的脚本化图像处理工具。您可能需要花一点时间来熟悉它,但我相信您可以编写一个脚本,您可以在此之后重复使用所有图像,通过缩小将高dpi图像转换为较低dpi图像。 / p>

答案 1 :(得分:0)

查看this文章。它描述了android如何处理资源的目录名称。另外看看this - android如何选择目录名称的最佳匹配。如果要对所有dpis使用相同的资源,只需将其放在默认的drawable文件夹中即可。