2011-06-28 19 views
9

私のリストビューが完全にリストビューアイテムではない場合(私のリストビューは8個のアイテムで十分ですが2個しかありません)エミュレータでは空の領域が黒く表示されます。AndroidのListViewの '空の'領域の色を設定します

[空]領域を透明に設定するにはどうすればよいですか?

背景色、キャッシュヒントを設定しようとしましたが、空白領域ではなく項目があるリストビューの背景色を変更するように見えます。

+0

あなたはfill_parentするリストビューの高さを設定しようとしたことがありますか?たぶん、背景色を設定して、あなたが探している結果を与えるでしょう – Marmoy

答えて

18

モトローラは、この動作についてブログを投稿していましたが、ブログはもはやオンラインではありません。答えは、Motoblur 2.3では、デフォルトのオーバースクロールフッターを設定します。これは、android:overScrollFooter="@null" Android 2.3以降。

これらのプロパティを使用してvalues-v10フォルダにのみ設定されたカスタムlistViewStyleのカスタムテーマを使用することをお勧めします。

+0

素晴らしい作品、ありがとう。 – Sileria

+0

素晴らしい、私は同じ問題を抱えていて、この答えは私の問題を解決しました...ありがとう! – avmauricio

+0

ブログの投稿のリンクは、この特定の問題に関連する場所にリンクしていないようです(削除した可能性はありますか?)が、この情報はまだ私にとって不思議に思っていました。 ListViewをプログラムでインスタンス化する人は、APIレベル9の後に呼び出すことができるsetOverscrollFooter()メソッドに注意してください。そのパラメータはnullにする必要があります。 – SilithCrowe

1

layout_alignParentBottom = "true"を削除したような感じです。したがって、灰色を変更するのではなく、リストビューは必要な項目を描画するのに十分なだけです。

0

layout_alignParentBottom="true"を削除して、height="wrap_content"を削除するだけでは十分ではありません。これらのソリューションは、画面の下部に他のウィジェットがない場合、またはListViewの下に他のウィジェットがない場合に機能します。

ListViewの下に他のレイアウトアイテムがある場合は、ListView内を必要な高さ(fill_parent)にすることができるように、ListViewを別のレイアウト、例えばLinearLayoutでラップする必要がありますListView以下の灰色の背景が変更されたMotorola OS v2.3.3フッターの動作によって表示されないように、それ自身を縮小することができました(wrap_content)。ここで

は一例です:MOTOBLURのバグを占めList View Footer Background on Android 2.3.3

2

プログラムによるソリューション:

if (Build.VERSION.SDK_INT >= 8 && Build.VERSION.SDK_INT <= 10) { 
    mListView.setOverscrollFooter(null); 
} 
関連する問題