在选项卡式片段中更改Listview的文本颜色

时间:2017-02-05 08:53:42

标签: java android listview fragment textcolor

我使用viewpager创建了一个标签式片段。有一个简单的列表视图来显示farg1中的数据。但是文字的颜色是白色的。如何将其更改为黑色。 listview不会设置Textcolor属性。 下面是用于片段的碎片的代码:

<style name="FragTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:textColor">#000000</item>
        <item name="preferenceTheme">@style/PreferenceThemeOverlay.v14.Material</item>
        <!--   <item name="preferenceTheme">@style/PreferenceThemeOverlay</item>-->
    </style>

下面是布局xml的代码:

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:orientation="vertical">

        <TextView
            android:id="@+id/tex1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Recently Used Mobile Number List "
            android:textSize="15sp" />

        <ListView
            android:id="@+id/targetlist" 
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </LinearLayout>

目前将背景设置为黑色以使其可读。

1 个答案:

答案 0 :(得分:2)

你可以创建list_textview.xml并定义颜色。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:gravity="center_vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TextView
        android:id="@+id/list_content"
        android:textColor="#000000"
        android:gravity="center"
        android:text="sample"
        android:layout_margin="4dip"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
    />
</LinearLayout>

在适配器中使用相同的xml,而不是使用android.R.layout.simple_list_item_1

arrayAdapter = new ArrayAdapter(getActivity(),R.layout.list_textview, R.id.list_content,recentlistarray); 
recentlist.setAdapter(arrayAdapter);

OR

ArrayAdapter adapter=new ArrayAdapter(
            this, android.R.layout.simple_list_item_1, listItems){

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            View view =super.getView(position, convertView, parent);

            TextView textView=(TextView) view.findViewById(android.R.id.text1);
            textView.setTextColor(Color.BLACK);

            return view;
        }
    };
    recentlist.setAdapter(arrayAdapter);