1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

Hintergrundfarbe geht nur für einzelne Elemente, jedoch nicht für ganze Liste

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von pixelflicker, 29.09.2011.

  1. pixelflicker, 29.09.2011 #1
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Beiträge:
    32
    Erhaltene Danke:
    2
    Registriert seit:
    19.06.2010
    Hallo,

    ich habe ein komisches Verhalten bei der Farbgebung festgestellt. Ich möchte die Hintergrundfarbe einer List-View ändern. Gebe ich nun im xml eine Farbe für die einzelnen Listelemente (innerhalb der xml-Datei für den List Adapter) an, nach dem Prinzip
    Code:
    <LinearLayout android:background="#FFFFFF">
    klappt das. Ich möchte jedoch der ganzen Liste die Farbe geben oder dem Fragment in dem die Liste steckt. Mit dem selben Code innerhalb der xml-Datei, die ich für die Liste habe klappt es aber leider nicht und auch innerhalb der Listendefinition, also mit
    Code:
    <ListView android:background="#FFFFFF"></ListView>
    klappt es auch nicht.

    Was mache ich falsch?
     
  2. the_alien, 29.09.2011 #2
    the_alien

    the_alien Android-Lexikon

    Beiträge:
    1,559
    Erhaltene Danke:
    184
    Registriert seit:
    04.05.2009
    Der ListView hat einen ColorCacheHint. Den musst du zusätzlich zur Hintergrundfarbe setzen.
     
  3. pixelflicker, 30.09.2011 #3
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Beiträge:
    32
    Erhaltene Danke:
    2
    Registriert seit:
    19.06.2010
    Hmm, also ich hab jetzt:
    Code:
    <ListView 
            android:layout_height="match_parent" 
            android:id="@+id/ListView1" 
            android:layout_width="match_parent"
            android:background="#ff0000"
            android:cacheColorHint="#00000000"
        ></ListView>
    
    Und das beeindruckt ihn in keiner Weise.
    Zumal ich glaube, dass ich das gar nicht setzen muss, da ich für die ganze Activity ein Hintergrundbild gesetzt habe und laut diesem Blog-Eintrag wird das dann sowieso automatisch gesetzt:
    Android Developers Blog: Why is my list black? An Android optimization

    Ich hätte nicht gedacht, dass es so schwer ist, eine Hintergrundfarbe zu setzen...
     
  4. the_alien, 30.09.2011 #4
    the_alien

    the_alien Android-Lexikon

    Beiträge:
    1,559
    Erhaltene Danke:
    184
    Registriert seit:
    04.05.2009
    Achso, du hast ein Hintergrundbild und der Listenhintergrund sollte durchsichtig sein?
     
  5. pixelflicker, 30.09.2011 #5
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Beiträge:
    32
    Erhaltene Danke:
    2
    Registriert seit:
    19.06.2010
    Ich hab in der Hauptactivity ein Hintergrundbild und über der liegt eine Liste innerhalb eines Fragments. Derzeit sehe ich durch die Liste das Hintergrundbild der Activity, ich möchte aber das die Liste einen weißen Hintergrund (eigentlich wieder eine Grafik, aber zum Testen reicht auch Farbe) hat und das klappt nicht, es geht nur, wenn ich den einzelnen Listenelementen die Farbe zuweise und da ich eine durchgehende Fläche im Hintergrund haben möchte reicht das nicht aus.

    Ich habe nun mal ein zweites Fragment (ohne Liste) angelegt und dem den Hintergrund verpasst, da geht es.
     

Diese Seite empfehlen