我有一个活动,其中包含一个以背景为png的 LayoutView ,以便在应用程序的其余部分提供漂亮的帧效果,并在此LayoutView中加载一个listView。
我已经在最新版本的ADT中测试了所有屏幕尺寸和分辨率配置文件的应用程序,并且可以在所有屏幕上正常运行,但是使用这些配置
-Tablet 10.1“WXVGA mdpi
-Tablet WSVGA 7“mdpi
-Nexus 7 7.17“800x1280 tvdpi
该列表超出了背景PNG的框架并且看起来很糟糕。
其他配置(也具有相同的分辨率但密度不同,反之亦然)有效。
要解决此问题,我必须增加listView边距,但这会导致所有其他配置出现问题。
如何在不更改应用程序的图形设计的情况下解决此问题?
修改
我添加了一个问题示例,listView必须保留在黑色区域,但在描述的情况下超出了区域
红色区域是一个LinearLayout1,里面有另一个带有ListView的LinearLayout2,边距很大,因为鲜艳的红色区域包含用作LinearLayout1背景的png框架
答案 0 :(得分:0)
我想说你需要调整/修改与某些屏幕密度相匹配的背景图像。在Android中,您可以选择使用这些文件夹来存储图像。
drawable,drawable-hdpi,drawable-hdpi-v11,drawable-ldpi,drawable-mdpi等 http://developer.android.com/guide/topics/resources/providing-resources.html
Android O.S将尝试根据硬件屏幕分辨率使用最合适的图像。因此,看看是否使图像更大/更小有助于列表视图的某些屏幕密度。
如果不是这样,屏幕截图肯定会有所帮助:P
答案 1 :(得分:0)
似乎您对所有屏幕和dpi使用相同的背景。
在这种情况下,很难做到(我发现了同样的问题)。
有一些解决方案:
<layout> <view id="left" size="20dp" background="left.png" /> <imageview id="content" size="0dp" weight="1" background="center.9.png" /> <view id="right" size="20dp" background="right.png" /> </layout>
通过使用它,布局与屏幕和dpi无关。