2011-10-26 64 views
0

我正在开发Android应用程序,我希望这个应用程序必须适合不同的屏幕尺寸和密度。默认情况下,我已经在res/layout中创建了files.xml文件,用于支持诸如QVGA(低密度),res/layout-normal/xml等小屏幕的res/layout-small/xml文件,以支持HVGA(中等屏幕)中等密度)以及适用于WVGA800(高密度)等大屏幕的res/layout-large/xml文件。当我最初在中等大小的屏幕上运行应用程序,例如320x480,即HVGA时,它运行完美,但是当我在大屏幕或小屏幕模拟器上运行相同的应用程序时,它会显示在中等尺寸屏幕上显示的相同布局,并且不适合屏幕和恶作剧反之亦然。我没有使用绝对布局,而是使用dp代替px或sp或dip。我已经尝试了很多,但无法成功。我应该如何处理这种情况?任何想法?Android应用程序不支持多个屏幕

+0

看看:http://developer.android.com/guide/practices/screens_support.html – NickLH

+0

是的,我已经遵循该指南,并写明所有屏幕和任何密度在清单也等于true,但我不我在哪里失踪? – Larik

+0

很难说,因为你不显示任何你所做的... – NickLH

回答

0

有几件事情来尝试,

  1. 自卸在运行时确认与屏幕尺寸的实际屏幕尺寸是你期待看到Get screen dimensions in pixels

  2. 暂时移除资源的内容是什么/布局文件夹来调试资源从何处被拉出。

一般来说,你应该能够支持QVGA和HVGA用相同的布局资源,但适应性强的宽度和高度,如FILL_PARENT等,然后有针对平板电脑一个单独的布局。

+0

感谢回复游行。我已经尝试了2个技巧,但它从布局正常文件中抽取资源。我已经分别为QVGA,HVGA和WVGA制作了布局,我认为根据屏幕配置拉动资源是Android的责任。 – Larik