simple_list_item_2可以定制吗?

Can simple_list_item_2 be customized?

我在我的代码中使用 simple_list_item_2 创建 listview.Everything 工作正常,但我想更改 layout.Is 的背景颜色可能吗?这个布局也可以像用户定义的那样自定义吗XML?

像这样制作你自己的simple_list_item_2,然后使用它

<TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"
   <!-- This is your background color-->
   android:background="#DC143C"

   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:minHeight="?android:attr/listPreferredItemHeight"
   android:mode="twoLine"
   android:paddingStart="?android:attr/listPreferredItemPaddingStart"
   android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
      <TextView android:id="@android:id/text1"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_marginTop="8dip"
             android:textAppearance="?android:attr/textAppearanceListItem" />
      <TextView android:id="@android:id/text2"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_below="@android:id/text1"
             android:layout_alignStart="@android:id/text1"
             android:textAppearance="?android:attr/textAppearanceListItemSecondary" />
 </TwoLineListItem>

(摘自android source code

IMO 你不能,但你可以用相同的代码创建另一个布局,然后替换 simple_list_item_2 的背景,然后用你想要的颜色更改它,然后而不是调用 simple_list_item_2调用你的新布局,它会起作用。

编辑*

按照@JonasCz 的回答,您可以对其进行编辑,替换它的示例代码如下:

ListView l = (ListView) findViewById(R.id.listview);
String[] values = new String[] { "Ubuntu", "Android", "iPhone",
    "Windows", "Ubuntu", "Android", "iPhone", "Windows" };
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
    R.layout.your_custom_simple_list_item_2, values); //removed the android. 
viewContainer = findViewById(R.id.undobar);
l.setAdapter(adapter);

代码来自AndroidListView/article.html