Я использую следующий код для установки ListView, данные и кнопки установлены правильно, когда я прокручиваю также нет проблем с повторением данных, но когда я прокручиваю, цвет устанавливается для всех текстовых полей, как я могу решитьэто?.
private class EfficientAdapter extends BaseAdapter {
public EfficientAdapter(Context context) {
mInflater = LayoutInflater.from(context);
}
public int getCount() {
return count;
}
public Object getItem(int position) {
return position;
}
public long getItemId(int position) {
return position;
}
public View getView(final int position, View convertView, ViewGroup parent) {
System.gc();
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.albumlist, null);
holder = new ViewHolder();
holder.albumName = (TextView) convertView.findViewById(R.id.albumDetails);
holder.delete=(Button)convertView.findViewById(R.id.deletealbum);
holder.share=(Button)convertView.findViewById(R.id.shareProject);
holder.preview=(Button)convertView.findViewById(R.id.prevProject);
convertView.setTag(holder);
}
else {
holder = (ViewHolder) convertView.getTag();
}
holder.albumName.setText(albumData[position][0]);
if((albumData[position][2].length()==0)){
holder.albumName.setTextColor(Color.RED);
}
holder.delete.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
.....
});
holder.preview.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
......
}
});
holder.share.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
......
});
return convertView;
}