13 Stimmen

Textfarbe der ListView ändern

Ich versuche, den Text zu ändern Farbe der ListView aber ich kann nicht herausfinden, wie man das macht.

    listViewObject= (ListView) findViewById(R.id.chathlist);        
    ArrayList<String> chatHistory = new ArrayList<String>();
    chatHistory.add("Msg 1");
    chatHistory.add("Msg 2");
    chatHistory.add("Msg 3");
    chatHistory.add("Msg 4");
    chatHistory.add("Msg 5");
    chatHistory.add("Msg 6");
    chatHistory.add("Msg 7");
    ArrayAdapter aa=new ArrayAdapter<String>(getApplicationContext(),
    android.R.layout.simple_list_item_1, chatHistory);
    listViewObject.setAdapter(aa);
    listViewObject.invalidate();

Ich habe viele Möglichkeiten ausprobiert, aber ich kann die Farbe nicht ändern. Es ist vielleicht eine einfache Sache, aber ich kämpfe mit diesem.

Meine XML-Datei lautet

  <RelativeLayout android:id="@+id/chat_history_container"
            android:layout_width="fill_parent" android:layout_height="wrap_content">
            <ListView android:paddingTop="15dip" android:paddingBottom="15dip"
                android:layout_width="fill_parent" android:paddingLeft="15dip"
                android:layout_height="wrap_content" android:id="@+id/chathlist"
                android:layout_gravity="center_horizontal"
                android:layout_centerInParent="true" android:paddingRight="15dip"
                 android:textColor="#FF0000"  android:listSelector="@drawable/gradient_box" >
            </ListView>
  </RelativeLayout>

11voto

Mark Mooibroek Punkte 7558

Hier finden Sie weitere Informationen:

http://www.anddev.org/view-layout-resource-problems-f27/changing-listview-text-color-t14527.html

Ändern der Textfarbe der Listenansicht in Android

Textfarbe in ListView ändern

Erstellen Sie ein Layout für Ihre Listenelemente und binden Sie dieses an einen ListAdapter.

6voto

2bard Punkte 2553

Das Problem ist, dass Sie das Standard-Listenelement-Layout "Android.R.layout.simple_list_item_1" verwenden. Wenn Sie die Farbe des Textes in der Listenansicht ändern möchten, müssen Sie Ihr eigenes Listenelement-Layout mit der richtigen Textfarbe erstellen.

Sie können dieses Element zu Ihrem Layoutordner hinzufügen:

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
 android:id="@android:id/text1"
        style="?android:attr/listItemFirstLineStyle"
        android:paddingTop="2dip"
        android:paddingBottom="3dip"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:textColor="#FF0000" /> 

Dann übergeben Sie dieses Element anstelle von Android.R.layout.simple_list_item_1

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X