我创建了一个listadapter,如下图所示,并填充hashmap中的textviews,如下所示
HashMap<String, String> kursiShitje = new HashMap<>();
for (int i = 0; i < 6; i++) {
kursiShitje.put("text_1", "Shitje");
JSONObject c = values.getJSONObject(i);
String name = c.getString(TAG_SELL);
kursiShitje.put("text_" + (i + 2), name);
}
这是listadapter:
ListAdapter adapter = new SimpleAdapter(
MainActivity.this, kursiKembimit,
R.layout.list_rows, new String[]{"text_1", "text_2", "text_3", "text_4", "text_5", "text_6", "text_7"},
new int[]{R.id.text1, R.id.text2, R.id.text3, R.id.text4, R.id.text5, R.id.text6, R.id.text7}) {
list_rows.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rows"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal"
android:paddingBottom="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp">
<TextView
android:id="@+id/text1"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/text2"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/text3"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"
/>
<TextView
android:id="@+id/text4"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"
/>
<TextView
android:id="@+id/text5"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"
/>
<TextView
android:id="@+id/text6"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"
/>
<TextView
android:id="@+id/text7"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"
/>
</LinearLayout>
问题是如何为列表中的每一行设置唯一的文本颜色。我可以通过覆盖getView为所有textview设置颜色,但我想为每一行设置唯一的颜色。我无法弄清楚如何解决它。
答案 0 :(得分:0)
您为此布局中的每个textView
设置的颜色与行中的颜色相同。
您已为所有文字视图设置了不同颜色的White color
。
在这里尝试diffrernt color android:textColor="@color/BLUE"
并查看结果。
<TextView
android:id="@+id/text4"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-bold"
android:gravity="right"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold"
/>