2012-11-28 136 views
0

我有一個包含LayoutView用PNG作爲背景給出一個很好的框架效果的應用程序,廣告一個ListView在此LayoutView裝載其餘的活動。問題與平板電腦10.1" WXVGA和平板WSVGA 7"

我已經測試過的應用程序與所有的屏幕尺寸和ADT的最新版本的分辨率配置文件和正常工作與所有的屏幕,但這些配置

-Tablet 10.1" WXVGA MDPI

-Tablet WSVGA 7" MDPI

-Nexus 7 7.17" 800x1280 tvdpi

列表超過背景PNG的幀,看起來很可怕。

其他配置(也具有相同的分辨率,但不同的密度,反之亦然)的作品。

要解決這個問題,我必須增加的ListView利潤,但與所有其他配置這項事業的問題。

我怎麼能解決這個問題,而無需改變應用程序的圖形設計?

編輯

我已經加入了問題的一個樣本,ListView控件必須留在黑色區域,但所描述的情況超過 enter image description here

紅色區域與另一個LinearLayout2內LinearLayout1面積與一個ListView,邊緣是很大的,因爲生動的紅色區域包含用作LinearLayout1的背景的png的框架

+0

你可以發佈截圖嗎? – e7fendy

+0

我有更新的問題添加一個樣本截圖 – AndreaF

回答

0

我會說你需要調整/修改匹配特定屏幕密度的背景圖像。在android中,您可以選擇使用這些文件夾來存儲圖像。

繪製,繪製,華電國際,繪製,HDPI-V11,繪製,LDPI,繪製-MDPI等 http://developer.android.com/guide/topics/resources/providing-resources.html

Android操作系統將嘗試基於硬件的屏幕分辨率,以使用最恰當的圖像。所以看看是否使圖像變大/變小有助於使用某些屏幕密度的列表視圖。

截圖肯定會幫助,如果這是不是這樣的:P

+0

問題是,問題不會發生在一個特定的密度,但只有在這些情況下,例如與mdpi 3.2「工作正常,但與mdpi 10.1」得到的問題。我添加了一個重現問題的示例屏幕截圖。 – AndreaF

0

看來你使用的所有屏幕和DPI相同的背景。

在這種情況下,很難做到這一點(我發現同樣的問題)。

有一些解決方案:

  1. 爲背景使用ninepatch。
  2. 鴻溝背景爲幾個區域,並且不與靜態大小使用保證金,而不是來看,如下圖所示:
<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。

+0

我已經在使用ninepatch作爲背景,我可以嘗試分割背景,但我不確定這可以解決問題 – AndreaF