2010-09-09 4 views
2

Je souhaite ajouter un type d'élément différent (comme une simple vue de texte) à la dernière position de mon ListView.Comment ajouter un type différent d'élément dans ListView en utilisant SimpleAdapter?

Je Prolonge la SimpleAdapter et passer outre certaines méthodes:

@Override 
public int getCount() { 
    if (super.getCount() == 0) { 
     return 0; 
    } else { 
     return super.getCount() + 1; 
    } 
} 

@Override 
public Object getItem(int position) { 
    if (position == getCount() - 1) { 
     return null; 
    } else { 
     return super.getItem(position); 
    } 
} 

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    View v; 
    if (position == getCount() - 1) { 
     if (convertView == null) { 
      v = new TextView(mContext); 
     } else { 
      v = convertView; 
     } 

     return v; 
    } else { 
     return super.getView(position, convertView, parent); 
    } 
} 

Mais ça n'a pas marché. Quel est le problème ou comment en ajouter un? Merci.

Répondre

2

Essayez d'utiliser un pied de page à la place, dans votre activité essayez

getListView().addFooter(View.inflate(R.layout.my_footer, null)); 

Vous devez faire ceci avant d'ajouter l'adaptateur au listview.

+0

fonctionne très bien! Merci! – shiami

+0

mon code: getListView(). AddFooterView (View.inflate (this, R.layout.footer, null)); – shiami

+0

ahh oui j'ai oublié qu'il veut un parent arguments. Merci – schwiz

Questions connexes