更改Android ListView内的文本颜色

时间:2016-07-04 18:27:32

标签: android listview colors

我需要更改listView中文本的颜色,但我不知道应该在哪里做。

这是我要存储我想在ListView中显示的值的列表:

function updateTransform() {
    t2.style.transform="translateY(250%)";
}

setTimeout(updateTransform, 1000);

这就是我在这个列表中添加项目的方法(outPut是一个简单的字符串):

private List<Map<String, String>> orderList = new ArrayList<Map<String, String>>();

这是我的SimpleAdapter:

orderList.add(createOrderList("orders", outPut));

这是我的createOrderList方法:

SimpleAdapter simpleAdapter = new SimpleAdapter(getApplicationContext(), orderList,
                        android.R.layout.simple_list_item_1,
                        new String[]{"orders"}, new int[] { android.R.id.text1 });

                listView.setAdapter(simpleAdapter);

这是带有ListView的XML:

private HashMap<String, String> createOrderList(String name, String number) {
    HashMap<String, String> employeeNameNo = new HashMap<String, String>();
    employeeNameNo.put(name, number);
    return employeeNameNo;
}

无论如何都要改变“android.R.id.text1”的颜色?

3 个答案:

答案 0 :(得分:0)

创建自定义适配器。在getView中,您将能够自定义所需的石灰。 您可以为它扩展ArrayAdapter。

答案 1 :(得分:0)

1)使用自定义适配器

公共类ListAdapter扩展了ArrayAdapter {

.image-enlargement {
    position: relative;
    display: flex;
    width: 100vw;
    height: 100vh;
}

.image-enlargement img {
    margin: auto;
}

}

你可以像这样设置文字颜色

tt1.setTextColor(Color.Blue);

在您的活动中

public ListAdapter(Context context, int textViewResourceId) {
    super(context, textViewResourceId);
}

public ListAdapter(Context context, int resource, List<Item> items) {
    super(context, resource, items);
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {

    View v = convertView;

    if (v == null) {
        LayoutInflater vi;
        vi = LayoutInflater.from(getContext());
        v = vi.inflate(R.layout.itemlistrow, null);
    }

    Item p = getItem(position);

    if (p != null) {
        TextView tt1 = (TextView) v.findViewById(R.id.id);
        TextView tt2 = (TextView) v.findViewById(R.id.categoryId);
        TextView tt3 = (TextView) v.findViewById(R.id.description);

        if (tt1 != null) {
            tt1.setText(p.getId());
        }

        if (tt2 != null) {
            tt2.setText(p.getCategory().getId());
        }

        if (tt3 != null) {
            tt3.setText(p.getDescription());
        }
    }

    return v;
}

答案 2 :(得分:0)

为Listview项目创建自定义XML文件。

listview_item.xml:

为此文件中的文字提供自定义颜色和尺寸。

<?xml version="1.0" encoding="utf-8"?>

<TextView  
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"
    android:textSize="20sp"
    android:gravity="left"  
    android:textColor="#FF0000"         
    android:padding="5dip"
    />

现在使用此文件显示带有数组适配器的listview项目,如:

 ArrayAdapter<String> mAdapter= new ArrayAdapter<String>(this, R.layout.listview_item, orderList);


            listView.setAdapter(mAdapter);