2014-01-24 3 views
-1

В моем случае вид списка на свиток, показывающий дубликаты ячеек. Не работает правильно. это мой код в GetView()Проблема с перераспределением списка списка вопроса

if(convertView == null) 
     { 
      LayoutInflater infalInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      convertView = infalInflater.inflate(R.layout.contact_cell, null); 
     } 

     try { 
      if(contacts.getContacts().get(position).getPhone() != null) { 
       ImageView contactIcon = (ImageView) convertView.findViewById(R.id.pic); 
       TextView contactName = (TextView) convertView.findViewById(R.id.name); 
       contactName.setText(contacts.getContacts().get(position).getDisplayName()); 
       contactIcon.setImageBitmap(contacts.getContacts().get(position).getThumbNail()); 
      } 
     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     return convertView; 

ответ

1

Добавить это yuor getView() метод

if(contacts.getContacts().get(position).getPhone() != null) { 
    ImageView contactIcon = (ImageView) convertView.findViewById(R.id.pic); 
    TextView contactName = (TextView) convertView.findViewById(R.id.name); 
    contactName.setText(contacts.getContacts().get(position).getDisplayName()); 
    contactIcon.setImageBitmap(contacts.getContacts().get(position).getThumbNail()); 
}else{ 
    ImageView contactIcon = (ImageView) convertView.findViewById(R.id.pic); 
    TextView contactName = (TextView) convertView.findViewById(R.id.name); 
    contactName.setText(""); 
    contactIcon.setImageBitmap(null); 
} 

Это происходит, когда getPhone() возвращает нулевое значение и convertView не обновляется.

1

Я предполагаю, что это ваша проблема:

if(contacts.getContacts().get(position).getPhone() != null) 

Что вы делаете, если телефон является недействительным? Вы оставляете старый контент внутри представления. Вы должны предоставить некоторые заполнители для этого условия. То же самое для исключения. И кстати, почему вы там ловите исключение?

Смежные вопросы