2011-07-30 56 views
3

我的頁面上有一個簡單的listview。android listview背景顏色保持灰色,無法在薑餅手機上更改

<ListView 
    android:id="@+id/dinerListView" 
    android:layout_width="fill_parent" 
    android:layout_height="150dip" 
    android:layout_weight=".40" 
    android:background="@drawable/backrepeat" 
     android:cacheColorHint="#00000000" 
    android:layout_alignParentTop="true" /> 

不管我怎麼設置背景 - 無論是圖像還是彩色,它保持灰色。如果我用行填充列表視圖,行背景顏色適當地顯示。

此行爲僅展示自己的薑餅手機(目前爲止的droid x和droid 3)。在模擬器和其他Froyo手機中,它工作正常。

+0

遇到同樣的問題 - DroidX - 2.3.3 – paulpooch

回答

0

您可以創建一個包含listview的佈局,然後將背景設置爲所需的圖像/顏色。然後將佈局的wrap_content屬性放在活動的主佈局下。

6

嘗試在您的ListView佈局中設置android:overScrollFooter="@null"

+2

如果您需要向後兼容性,請創建/res/values-v10/styles.xml並使用parent = @ android:style/Widget.ListView定義新樣式。爲上述屬性添加。 – Keith

2

如何在OS v2.3.3繪製ListView和上面讓你的最後一行項目下的額外空間顯示您指定的背景,而不是新的灰色默認頁腳的背景色:

overScrollFooter是不能接受的最構建。
height="wrap_content"本身只有在ListView下面沒有其他小部件時纔有效。 刪除layout_alignParentBottom="true"可以工作,但也可能會損壞屏幕布局,具體取決於ListView與其他小部件的關係。

降低ListView高度的最直接的方法是,在沒有額外的頁腳空間的情況下,Motorola OS v2.3要繪製灰色,將ListView包裝在另一個Layout中,例如LinearLayout。將LinearLayout設置爲您希望的大小,並將內部ListView的height減少爲"wrap_content"。如果您需要更多解釋和示例,請導航至:List View Footer Background on Android 2.3.3

+0

設置ListView height =「wrap_content」確實有效,但它可能會導致其他問題,因爲視圖將從適配器添加視圖多次調整大小,並且getView()將在每個可見行上多次調用,因爲此。 –