2012-05-03 2 views
2

Как установить цвет фона в списке? Я могу установить цвет фона элементов списка, но не отверстие Activity-View (см. Черную часть в нижней части изображения). Как я могу это достичь?android listactivity background color

ListActivity XML выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:padding="5dp" 
    android:background="@color/darkbluelogo" > 

    <ImageView android:id="@+id/list_image" 
     android:layout_width="48dip" 
     android:layout_height="48dip" 
     android:contentDescription="@id/list_image" 
     /> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:padding="5dp" 
     android:background="@color/darkbluelogo" 
     android:scrollingCache="false" 
     android:cacheColorHint="#00000000" > 

     <TextView 
      android:id="@+id/title" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:text="@+id/title" > 
     </TextView> 

     <TextView 
      android:id="@+id/datetime" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:text="@+id/datetime" > 
     </TextView> 

    </LinearLayout> 
</LinearLayout> 

И это, как он появляется на устройстве: enter image description here

РЕШЕНИЕ:

Я должен был добавить XML стиль и добавьте это в действие в AndroidManifest.xml

Это w как правильный ответ: https://stackoverflow.com/a/10426474/1306012

+0

попробуйте сделать список backgrounColor прозрачным и линейным расположением darkbluelogo – thepoosh

+0

Благодарим за отзыв. как я могу установить список backgroundColor? –

+0

вы можете либо сделать это в XML (но я думаю, что у вас нет списка там), либо сделать это в JAVA с помощью 'list.setBackgroundColor (color);' – thepoosh

ответ

5

набор layout_height к fill_parent в файле XML, которые содержат ваш ListView. и установите фон этого xml-файла, что вы хотите.

EDIT: вы можете использовать тему для установки фона в этом случае

как этот

<style name="MyTheme"> 

    <item name="android:background">@color/darkbluelogo</item> 

</style> 

и применить эту тему в список вашей деятельности в файле манифеста.

<activity 
     android:theme="MyTheme" 
+0

Благодарим за отзыв, но, похоже, это не имеет никакого эффекта в моем случае. –

+0

@ viperbone, какой тип адаптера вы используете для заполнения списка? где вы XMl-файл, содержащий ListView? – Akram

+0

затем попробуйте поиграть с цветом – Akram

1

Вы Выдали высоту основного линейного расположения

android:layout_height="wrap_content" 

сделать его

android:layout_height="fill_parent" 

это изменит цвет всего фона.

+0

Благодарим за отзыв, но, похоже, это не имеет никакого эффекта в моем случае. –

3

В следующем коде показано, как установить цвет фона в ListActivity.

getListView().setCacheColorHint(Color.rgb(36, 33, 32)); 
getListView().setBackgroundColor(Color.rgb(36, 33, 32)); 
+0

жаль, что в моем случае нет никакого вздутия? –

1

привет, если и используется по умолчанию вид андроида списка затем добавить следующее:

setListAdapter(new ArrayAdapter<String>(this, 
      android.R.layout.simple_list_item_1, CONTENT)); 

    final ListView listView = getListView(); 
    listView.setBackgroundColor(Color.parseColor("#4597CD")); 

или, если и установить ListView в XML макете, то:

<ListView 
    android:id="@+id/listviewID" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#4597CD" 
    android:cacheColorHint="@color/darkbluelogo" 
    /> 
0

проверки атрибут ListView ширина и высота оба должны быть «fill_parent».

<ListView 
    android:id="@+id/listCategory" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@color/darkbluelogo" 
    android:cacheColorHint="@color/darkbluelogo" 
    /> 
0
super.getListView().setBackgroundColor(getResources().getColor(R.color.red));