• Home
  • Youzik
  • Papystreaming
  • Darknet
  • Libertyland
  • Cacaoweb
  • GG maps
  • Yggtorrent
  • Zone téléchargement

Grimag

  • Accueil
  • Catégories
    • Smartphone
    • High Tech
    • Business
    • Web
    • Appli Jeux Vidéo
    • Shopping
  • Android c’est quoi ?
  • Nous Contacter
  • Nos comparatifs
    • Drone avec caméra
    • Clavier d’ordinateur
    • Onduleur
    • GPS
    • Répéteur WiFi

Développer sa Listview personnalisée sous android



Dans se tuto je vais développer une listview personnalisée.
La listview sous android c’est par défaut ça
views_lists_example1
je vais personnalisée ma listview elle sera de la forme titre en taille 15 et en dessous résumé en taille 10

Je crée ma class Listperso qui est une extension de la class ListActivit

public class Listperso  extends ListActivity {
    
      private  String[][]  aTableauResult;
	 public void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        setListAdapter(new SpeechListAdapter(this));
	               	        	        
	 }

dans la méthode setListAdapter je passe la class SpeechListAdapter(this) cette classe et une extension de la class BaseAdapter je crée ma classe à la suite

private class SpeechListAdapter extends BaseAdapter {
		 private Context mContext;
		 private String[]  sResume ;
		 private String[] sTitre;
		 public SpeechListAdapter(Context context) {
	            mContext = context;
	            
	            aTableauResult= //ajouter une fonction pour récupérer vos résultats dans un tablau au choix
	            sResume  = aTableauResult[1];
	            sTitles= aTableauResult[0];
	        }
	  
		  
	        public int getCount() {
	            return sTitre.length;
	        }
	     
	        public Object getItem(int position) {
	            return position;
	        }
	        public long getItemId(int position) {
	            return position;
	        }
	        
	        public View getView(int position, View convertView, ViewGroup parent) {
	            SpeechView sv;
	            if (convertView == null) {
	                sv = new SpeechView(mContext, mTitles[position],
	                        mDialogue[position]);
	            } else {
	                sv = (SpeechView) convertView;
	                sv.setTitre(sTitre[position]);
	                sv.setResume(sResume[position]);
	            }

	            return sv;
	        }    
	       
	 }

sv est un objet de type SpeechView. je crée donc ma class SpeechView c’est elle qui vas définir le contenu de chaque item de ma liste.

	 private class SpeechView extends LinearLayout {
             
	        private TextView mTitle;
	        private TextView mResume;
	        public SpeechView(Context context, String titre, String resume) {
	            super(context);

	            this.setOrientation(VERTICAL);

	            // ici on construit l'affichage de notre item on peut également le faire dans un xml
	            //ici le titre et la  taille du texte avec size
	            mTitle = new TextView(context);
	            mTitle.setText(titre);
	            mTitle.setTextSize(15);
	            addView(mTitle, new LinearLayout.LayoutParams(
	                    LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
                  // le résumé avec la taille  du texte
	            mResume= new TextView(context);
	            mResume.setText(resume);
	            mDialogue.setTextSize(10);
	            addView(mDialogue, new LinearLayout.LayoutParams(
	                    LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
	        }

	        /**
	         * Convenience method to set the title of a SpeechView
	         */
	        public void setTitre(String titre) {
	            mTitre.setText(titre);
	        }

	        /**
	         * Convenience method to set the dialogue of a SpeechView
	         */
	        public void setDialogue(String words) {
	            mDialogue.setText(words);
	        }

	    }

Il ne reste plus qu’à rajoute la méthode onListItemClick pour traiter le click sur un item de notre liste.

 protected  void onListItemClick(ListView l, View v, int position, long id){	
		
		 super.onListItemClick(l, v, position, id);
           // rajouter l'action sur le click sur votre liste

}

tutolisteview2

IMPORTANT importer les librairies
import android.app.ListActivity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;

Il est temps de mettre à profit les tutoriels d’Android France:
Passez à la vitesse supérieure et investissez quelques dizaines d’euros pour acquérir les connaissances qui vous feront gagner de l’argent avec vos applications, rendez-vous sur notre boutique Android-france pour ces formations en vidéo

Juin 7, 2009Gnakouri Danon


Le Samsung S8000 Jet une version du Orion (cubic) sans Android ?Une vidéo du netbook GNB 7 pouces tournant sous Android
Gnakouri Danon

Co-fondateur du site Android france, senior lead developper, passionné de bière et de cigare cubain

7 juin 2009 Developpement, Tuto développementAjouter un mot-clef, android, Developpement, liste, listview542

2023 © Android-France