Hi all, I'm having an issue with the ListView in Android.
So I have an activity extending the ListActivity, in the activity I have an innerclass for my adapater. Now both on my device and the emulator some entries appear 2 or 3 times in the list (not always the same items) although the size of my List<Label> is always the same! On the emulator I noticed that it's mostly related to the scrolling in the list... If I scroll down some entries are duplicate, if I scroll up and down again the entries have changed all over the list... Is there anything in my code that you guys can see that is wrong? Here's my code: .... this.labels = labelService.findAll(); Collections.sort(this.labels, new LabelByNameComparator()); Log.d(LOG_TAG, labels.size() + " labels loaded!"); ManageLabelsListAdapter adapter = new ManageLabelsListAdapter(labels); adapter.notifyDataSetChanged(); setListAdapter(adapter); /** * The list adapater private inner-class used to display the manage labels list. */ private class ManageLabelsListAdapter extends ArrayAdapter<Label> { private final String LOG_TAG = ManageLabelsListAdapter.class.getSimpleName(); /** * {@inheritDoc} */ public ManageLabelsListAdapter(List<Label> labels) { super(ManageLabelsActivity.this, R.layout.list_item_labels, labels); Log.d(LOG_TAG, "Creating the manage labels list adapater"); } @Override public View getView(int position, View convertView, ViewGroup parent) { Log.d(LOG_TAG, "Getting view..."); View row = convertView; ManageLabelsListWrapper wrapper; if(row == null) { Log.d(LOG_TAG, "Row needs to be created!"); final Label label = labels.get(position); Log.d(LOG_TAG, "Label at list position " + position + " retrieved from DB list: " + label); LayoutInflater inflater = getLayoutInflater(); row = inflater.inflate(R.layout.list_item_labels, parent, false); Log.d(LOG_TAG, "Label row inflated into layout!"); wrapper = new ManageLabelsListWrapper(row); Log.d(LOG_TAG, "Row wrapped!"); TextView labelName = wrapper.getLabelname_listitem(); Log.d(LOG_TAG, "About to update the name of the label in the view for TextView " + labelName + " with the value: " + label.getName()); labelName.setText(label.getName()); ImageView deleteButton = wrapper.getBtn_delete(); deleteButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { deleteLabel(label, true); } }); } return row; } } -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en