设置ListView奇偶行不同的字体色和不同的背景色的具体代码
时间: 2024-04-29 22:25:22 浏览: 118
以下是设置ListView奇偶行不同的字体色和不同的背景色的示例代码:
```java
public class MyAdapter extends BaseAdapter {
private List<String> mData;
private Context mContext;
public MyAdapter(List<String> data, Context context) {
mData = data;
mContext = context;
}
@Override
public int getCount() {
return mData.size();
}
@Override
public Object getItem(int position) {
return mData.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = LayoutInflater.from(mContext).inflate(R.layout.item_layout, parent, false);
holder.mTextView = convertView.findViewById(R.id.tv_item);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.mTextView.setText(mData.get(position));
if (position % 2 == 0) { // 偶数行
holder.mTextView.setTextColor(mContext.getResources().getColor(R.color.even_text_color));
convertView.setBackgroundColor(mContext.getResources().getColor(R.color.even_bg_color));
} else { // 奇数行
holder.mTextView.setTextColor(mContext.getResources().getColor(R.color.odd_text_color));
convertView.setBackgroundColor(mContext.getResources().getColor(R.color.odd_bg_color));
}
return convertView;
}
private static class ViewHolder {
TextView mTextView;
}
}
```
其中,`item_layout` 是 ListView 的每个 item 的布局文件,其内容可以根据需要自行定义。`even_text_color`、`even_bg_color`、`odd_text_color`、`odd_bg_color` 分别是偶数行字体颜色、偶数行背景色、奇数行字体颜色、奇数行背景色的资源值。在 getView 方法中,根据 position 的奇偶性,设置对应的字体颜色和背景色即可。
阅读全文