需要为我的 ListView 应用颜色
Need to apply a color to my ListView
在 android 中,我想为我的 ListView 应用颜色。
这是ListView
:
listView = (ListView) findViewById (R.id.listView1)
我的适配器显示列表:
adapter = new ArrayAdapter <String> (this, android.R.layout.simple_list_item_1,
ArrayofName);
listView.setAdapter (adapter);
我的包含颜色的变量:int textColor
。我怎么能做到?例如,您可以像这样更改列表的背景:
listView.setBackgroundColor(textColor);
但是我想改变文字的颜色。
您正在使用:
android.R.layout.simple_list_item_1
使用 ID 为 mytextview1 的文本视图创建一个新的 XML 文件 your_custom_layout.xml,并将 XML 中文本的颜色设置为
android:textColor="#ff0000"
然后像这样设置你的适配器:
setListAdapter(new ArrayAdapter<String>(this, R.layout.your_custom_layout, R.id.mytextview1, ArrayofName));
您需要使用自定义 TextView xml 来更改 ListView 项目中的文本颜色。
另一种最简单的方法是创建一个布局文件,其中包含您想要的文本视图以及您喜欢的 textSize、textStyle、color 等,然后将其与 ArrayAdapter 一起使用。
list_text.xml
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textview"
android:textColor="@color/mycolor"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
更改您的代码以使用此文本视图而不是 simple_list_item_1,如下所示:
adapter = new ArrayAdapter <String> (this, android.R.layout.list_text,
ArrayofName);
listView.setAdapter (adapter);
希望对您有所帮助。
这样做
dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, allData) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView text = (TextView) view
.findViewById(android.R.id.text1);
text.setTextColor(Color.parseColor("#FBB117"));
return view;
}
};
在 android 中,我想为我的 ListView 应用颜色。
这是ListView
:
listView = (ListView) findViewById (R.id.listView1)
我的适配器显示列表:
adapter = new ArrayAdapter <String> (this, android.R.layout.simple_list_item_1,
ArrayofName);
listView.setAdapter (adapter);
我的包含颜色的变量:int textColor
。我怎么能做到?例如,您可以像这样更改列表的背景:
listView.setBackgroundColor(textColor);
但是我想改变文字的颜色。
您正在使用:
android.R.layout.simple_list_item_1
使用 ID 为 mytextview1 的文本视图创建一个新的 XML 文件 your_custom_layout.xml,并将 XML 中文本的颜色设置为
android:textColor="#ff0000"
然后像这样设置你的适配器:
setListAdapter(new ArrayAdapter<String>(this, R.layout.your_custom_layout, R.id.mytextview1, ArrayofName));
您需要使用自定义 TextView xml 来更改 ListView 项目中的文本颜色。
另一种最简单的方法是创建一个布局文件,其中包含您想要的文本视图以及您喜欢的 textSize、textStyle、color 等,然后将其与 ArrayAdapter 一起使用。
list_text.xml
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textview"
android:textColor="@color/mycolor"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
更改您的代码以使用此文本视图而不是 simple_list_item_1,如下所示:
adapter = new ArrayAdapter <String> (this, android.R.layout.list_text,
ArrayofName);
listView.setAdapter (adapter);
希望对您有所帮助。
这样做
dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, allData) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView text = (TextView) view
.findViewById(android.R.id.text1);
text.setTextColor(Color.parseColor("#FBB117"));
return view;
}
};