如何更改列表视图的字体颜色
How to Change the font color of a listview
这是我的列表视图的代码,如何更改列表视图的颜色
public class eat extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_eat);
String [] Hotels ={"Deer Park","Araliya","Royal Lotus","Kandalama"};
ListAdapter hoteladapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,Hotels);
ListView hotellist= (ListView)findViewById(R.id.lv);
hotellist.setAdapter(hoteladapter);
// hotellist.setc
}
您必须实现自己的 ListAdapter
以将您的数据项填充到自定义视图中。网上有大量教程。 Google 搜索会有所帮助。
您需要以某种方式获得对保存文本的 TextView 对象的访问权限。
您有几个选择:
- 使用自定义适配器
- 使用自定义项目布局
快速而肮脏的方式:
ListAdapter hoteladapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, Hotels) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView tv = (TextView) view.findViewById(android.R.id.text1);
tv.setTextColor(Color.RED);
return view;
}
};
您可以按如下方式指定您的列表项布局
yourtextviewlayout.xml:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textView"
android:textColor="@color/your_color"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
并将此布局提供给您的 ArrayAdapter
ListAdapter hoteladapter = new ArrayAdapter<String>(this,R.layout.yourtextviewlayout,Hotels);
这是我的列表视图的代码,如何更改列表视图的颜色
public class eat extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_eat);
String [] Hotels ={"Deer Park","Araliya","Royal Lotus","Kandalama"};
ListAdapter hoteladapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,Hotels);
ListView hotellist= (ListView)findViewById(R.id.lv);
hotellist.setAdapter(hoteladapter);
// hotellist.setc
}
您必须实现自己的 ListAdapter
以将您的数据项填充到自定义视图中。网上有大量教程。 Google 搜索会有所帮助。
您需要以某种方式获得对保存文本的 TextView 对象的访问权限。
您有几个选择:
- 使用自定义适配器
- 使用自定义项目布局
快速而肮脏的方式:
ListAdapter hoteladapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Hotels) { @Override public View getView(int position, View convertView, ViewGroup parent) { View view = super.getView(position, convertView, parent); TextView tv = (TextView) view.findViewById(android.R.id.text1); tv.setTextColor(Color.RED); return view; } };
您可以按如下方式指定您的列表项布局
yourtextviewlayout.xml:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textView"
android:textColor="@color/your_color"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
并将此布局提供给您的 ArrayAdapter
ListAdapter hoteladapter = new ArrayAdapter<String>(this,R.layout.yourtextviewlayout,Hotels);