Android 无法更改Listitems文本颜色

Android 无法更改Listitems文本颜色,android,xml,Android,Xml,我有一个自定义的listview,我不知道如何更改listitems文本的颜色、样式、大小等。我曾尝试在xml文件中进行编辑,但没有帮助。我是android新手,任何帮助都将不胜感激 **layout** ******** <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_cont

我有一个自定义的listview,我不知道如何更改listitems文本的颜色、样式、大小等。我曾尝试在xml文件中进行编辑,但没有帮助。我是android新手,任何帮助都将不胜感激

**layout**
********
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:background="@drawable/background"
android:layout_height="wrap_content"
>
<EditText 
 android:id="@+id/inputSearch"
 android:layout_height="wrap_content"
 android:layout_width="fill_parent"
 android:hint="Search"
 android:drawableRight="@drawable/search"
 android:inputType="textVisiblePassword"
 android:cacheColorHint="#00000000"
 android:background="#D8D8D8"
>
</EditText>
<ListView
    android:id="@+id/ListView01"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:dividerHeight="1dp"
    android:divider="#2D9E00"
    android:listSelector="@drawable/list_selector"
    android:cacheColorHint="#00000000"
    android:fastScrollEnabled="true">

  </ListView>

</LinearLayout>



**list_selector.xml**
*******************

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
 android:state_selected="false"
    android:state_pressed="false"
    android:drawable="@drawable/gradient_bg" />

<item android:state_pressed="true"
    android:drawable="@drawable/gradient_bg_hover" />

<item android:state_selected="true"
 android:state_pressed="false"
    android:drawable="@drawable/gradient_bg_hover" />
 </selector>


**gradient_bg.xml
*********************
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
 <gradient
  android:startColor="#2D9E00"
  android:centerColor="#2D9E00"
  android:endColor="#2D9E00"
  android:angle="270" />

</shape>

**gradient_bg_hover.xml**
**************************
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
  android:startColor="#2D9E00"
  android:centerColor="#2D9E00"
  android:endColor="#2D9E00"
  android:angle="270" />

</shape>
我的java代码

public class MainActivity extends Activity {

private ListView list1;
private String array[] ;
EditText inputSearch; 
ArrayAdapter<String> adapter;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    inputSearch = (EditText) findViewById(R.id.inputSearch); 
    list1 = (ListView) findViewById(R.id.ListView01);
    array = getResources().getStringArray(R.array.myArray);
    adapter =new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,        getResources().getStringArray(R.array.myArray));
    list1.setAdapter(adapter);
    inputSearch.addTextChangedListener(new TextWatcher() {
您正在使用android.R.layout.simple_list_item_1作为ListView中项目的布局。如果要自定义项目的布局,请执行以下步骤:

步骤1创建自定义XML布局simple_list_item_custom.XML,如下所示:

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

其他一切都保持不变。

这里有一个很好的答案:要定制ListView,可以发布java代码。列表项使用哪种布局?问题是我已经指定了一个包含我的arrayspost list_selector.xmlWow的xml!如果你能解释一下这不起作用就好了?崩溃还是什么?哥们,它只是不起作用,颜色什么都没发生我的意思是我已经指定了阵列的位置。所以我必须删除它吗?删除样式=?android:attr/listItemFirstLineStyle,然后用我的答案重试。。颜色应该改变。。如果没有,我会验证一些东西。你的意思是说你在适配器初始化中用R.layout.simple\u list\u item\u custom替换了android.R.layout.simple\u list\u item\u 1。列表仍然像以前一样加载并且颜色不是红色?
adapter =new ArrayAdapter<String>(this, R.layout.simple_list_item_custom, getResources().getStringArray(R.array.myArray));