IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants graphiques Android Discussion :

EditText et Listview dans le même Layout


Sujet :

Composants graphiques Android

  1. #1
    Membre averti
    Java/.NET
    Inscrit en
    Février 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Java/.NET

    Informations forums :
    Inscription : Février 2005
    Messages : 50
    Par défaut EditText et Listview dans le même Layout
    Bonjour,

    J'essaye depuis quelque temps sans succès de faire en sorte d'avoir une zone de saisie qui me permet de faire une recherche et une Liste qui affiche les résultats au fur et à mesure de la saisie.

    Ainsi dans mon layout search.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <RelativeLayout ....>
       <EditText ... />
       <ListView ... /> ou <TextView ... />
    </RelativeLayout>
    A partir de là dans le code java je n'arrive pas à instancier la liste des résultats malgré tout les efforts ?

    Merci pour votre aide.

  2. #2
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    Salut,

    Pourrais-tu poster ton code Java pour voir également où tu en es et ce que tu n'arrives pas à faire?

    Merci.

  3. #3
    Membre averti
    Java/.NET
    Inscrit en
    Février 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Java/.NET

    Informations forums :
    Inscription : Février 2005
    Messages : 50
    Par défaut
    Bonjour,
    En fait niveau code je suis un peu bloqué mais voilà ce qui se trouve dans mon Activity et une copie d'écran (où il faudra remplacer l'espace noir par une jolie liste de titre).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
    public class SearchActivity extends Activity implements TextWatcher{
     
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.search_view);
            TextView edit = (TextView) findViewById(R.id.editSearch);
            edit.addTextChangedListener(this);
        }
     
    	public void afterTextChanged(Editable s) {
    		// TODO Auto-generated method stub
     
    	}
     
    	public void beforeTextChanged(CharSequence s, int start, int count,
    			int after) {
    		// TODO Auto-generated method stub
     
    	}
     
    	public void onTextChanged(CharSequence s, int start, int before, int count) {
    		// TODO Auto-generated method stub
    		//rechercherMangaNom(s.toString());
    		String[] types = new String[]{
    	        	"Shojo",
    	        	"Shonen",
    	        	"Seinen",
    	        	"Eichi",
    	        	"Hentaï"
    	        };
     
    	}
     
    	public String[] rechercherMangaNom(String nomSaisie) {
    		CreateDatabase createDatabase = new CreateDatabase(this, Constante.DATABASE_NAME, null, 1);
    		SQLiteDatabase db = createDatabase.getWritableDatabase();
     
    		StringBuffer requeteSql = new StringBuffer();
    		String[] column = new String[3];
    		column[0] = "id";
    		column[1] = "titre";
    		column[2] = "idType";
    		requeteSql.append("titre like '%");
    		requeteSql.append(nomSaisie);
    		requeteSql.append("%'");
    		Cursor curs = null;
    		try{
    			curs = db.query("titre", column, requeteSql.toString(), null, null, null, "titre ASC");
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    		String[] listeNomManga = new String[curs.getCount()];
    		int compteur = 0;
    		while (curs.isLast()) {
    			listeNomManga[compteur] = curs.getString(0);
    			compteur++;
    			curs.moveToNext();
    		}
    		curs.close();
    		db.close();
    		createDatabase.close();
    		return listeNomManga;
    	}
    }
    Merci de ton aide.
    Images attachées Images attachées  

  4. #4
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    Avant même de regarder ton code, je voulais savoir si tu avais déjà penser à utiliser le composant qui permet de faire de la complétion ?

    http://a-renouard.developpez.com/tut...-sous-android/

  5. #5
    Membre averti
    Java/.NET
    Inscrit en
    Février 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Java/.NET

    Informations forums :
    Inscription : Février 2005
    Messages : 50
    Par défaut
    Bonjour,
    oui j'ai vu qu'il existait ce composant, mais je ne le trouve pas pratique à utiliser. C'est pour ça que je voudrais construire une liste en dessous de ma zone de saisie.

    Mais si c'est la seule solution je m'y dirigerais.

    Merci.

  6. #6
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Citation Envoyé par kei-kun41 Voir le message
    Bonjour,

    J'essaye depuis quelque temps sans succès de faire en sorte d'avoir une zone de saisie qui me permet de faire une recherche et une Liste qui affiche les résultats au fur et à mesure de la saisie.
    Il te suffit juste d'implémenter une liste dans ton layout , de créer un ArrayAdapter sur cette liste , et de modifier la liste de cette Adapter au fur et à mesure de test recherches via t'as SQliteBD par exemple.

    Par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     
    /* liste contient ta chaine obtenue via ta bd */
    ArrayList <String> mylist = new ArrayList <String> ();
    for (int i=0 ; i < liste.size() ; i++ ) {
    		         mylist.add( new String (m_liste.get(i) ));
    	        }
    	        ArrayAdapter<String> myAdapter = new ArrayAdapter<String>(this, R.layout.list,mylist);
     
     
    	  		ListView lv = getListView();
    	  		lv.setAdapter(myAdapter);   
    	  		lv.setTextFilterEnabled(true);
     
    	  		lv.setOnItemClickListener(new OnItemClickListener() {
    		  		public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
     
    		  		}
    		  	});
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    /* Pour la mettre à jour */
    mylist.add("ajout chaine");
    ((BaseAdapter) lv.getAdapter()).notifyDataSetChanged ();
    Tu peux toujours créer ton adapter et le gérer comme tu veux aussi

  7. #7
    Membre confirmé Avatar de cad13
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 247
    Par défaut
    Personnellement, j'aurais fait comme le propose MisterDuChnok, un edittext avec autocompletion...

    Regarde ici ce qu'il est possible de faire :
    http://developer.android.com/intl/fr...ary/index.html

  8. #8
    Membre averti
    Java/.NET
    Inscrit en
    Février 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Java/.NET

    Informations forums :
    Inscription : Février 2005
    Messages : 50
    Par défaut
    Oui je sais bien, seulement j'aurais voulu avoir une vraie liste (un peu comme sur le market).
    Mais je crois que pour une première version je vais me tourner vers l'autocompletion, n'ayant pas beaucoup de temps à y consacrer je vais tenter de faire simple.
    Je n'ai pas eu le temps de tester la proposition de Feanorin, mais m'y attélerais quand j'aurais un peuplus de temps.
    Merci beaucoup pour vos réponses à tous.
    Je ne mets pas en résolu en attendant de pouvoir le tester.

    Merci,
    kei-kun41

Discussions similaires

  1. Comment utiliser plusieurs ListView dans la même activité ?
    Par bileltechno dans le forum Composants graphiques
    Réponses: 13
    Dernier message: 29/08/2014, 23h25
  2. Difficultés à afficher 2 ListView dans une même Activity
    Par molotof69 dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 25/04/2013, 17h16
  3. Lancer une activité dans le même layout
    Par n99ky dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 10/04/2012, 05h06
  4. ListView et ImageView dans la même activity ?
    Par clege dans le forum Composants graphiques
    Réponses: 9
    Dernier message: 20/02/2011, 14h16
  5. Plusieurs Adapter dans une même ListView
    Par bonofred dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 24/01/2011, 10h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo