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

Android Discussion :

Problème cursor SQLite


Sujet :

Android

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    542
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 542
    Par défaut Problème cursor SQLite
    Bonjour,

    Mon application affiche une liste d'éléments, lors d'un clique sur un élement cela affiche une boite de dialog et lors du clic sur Ok cela sauvegarde les données du cursor à la position cliquée.

    Le problème constaté c'est qu'il ne récupère pas la bonne position de la listview.


    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
     
    	@Override
    	protected void onListItemClick(ListView l, View v, int position, long id) {
     
     
    Bundle b = new Bundle();
    Intent intent = new Intent();
    final Cursor o = (Cursor) l.getItemAtPosition(position);
    final AlertDialog.Builder builder = new AlertDialog.Builder(BActivity.this);
    		builder.setView(layout);
    		builder.setPositiveButton(android.R.string.ok,
    				new DialogInterface.OnClickListener() {
    					public void onClick(DialogInterface dialog, int whichButton) {
     
    ContentValues content = new ContentValues();
    content.put("nom",o.getString(cf.getColumnIndex("nom")));
    db.insererNom(content);
     
    				}
     
    			}
    		});
    }
    D'où pourrais venir le problème?

  2. #2
    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
    Bonjour,


    Pourrais tu nous dire ce que tu récupères dans la variable position et est ce que cela correspond à ceux que tu souhaites obtenir ?

    Merci .

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    542
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 542
    Par défaut
    dans la variable position je récupère bien la valeur de l'élément cliqué.

  4. #4
    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
    Dans ce cas regarde petit à petit tes variables pour savoir laquelle est erronée .

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    542
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 542
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    protected void onListItemClick(ListView l, View v, int position, long id) {
    super.onListItemClick(l, v, position, id);
    final Cursor o = (Cursor) l.getItemAtPosition(position);
    AlertDialog.Builder builder = new AlertDialog.Builder(BaseAllActivity.this);
    builder.setView(layout);
    builder.setPositiveButton(android.R.string.ok,new DialogInterface.OnClickListener() {
    	public void onClick(DialogInterface dialog, int whichButton) {
                 showMyDialog(c, prix_total);
     
    						}

    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
     
    protected void showMyDialog(final Cursor c, final float prixtotal) {
    AlertDialog.Builder alert = new AlertDialog.Builder(this);
     
    Log.v("Message1", "nom:  " + c.getString(c.getColumnIndex("nom")));
    alert.setTitle(R.string.title_name);
    alert.setMessage(R.string.title_choice_name);
    // Set an EditText view to get user input
    final EditText input = new EditText(this);
    alert.setView(input);
     
    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
    			public void onClick(DialogInterface dialog, int whichButton) {
    Log.v("Message2", "nom:  " + c.getString(c.getColumnIndex("nom")));
    }
    Le message 1 contient la bonne valeur.
    Je constate que le message 2 n'est pas le même que le message 1 donc il y a un changement dont je ne sais pas par qui il se produit.

  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
    Je constate que le message 2 n'est pas le même que le message 1 donc il y a un changement dont je ne sais pas par qui il se produit.
    Je ne sais pas si cela est une bonne idée d'avoir le cursor en final .
    Car à la fin de ta procédure showMyDialog , je ne sais pas ce que deviens ton Cursor c.
    Essaye plutôt de l'avoir en membre de ta classe, je pense que tu auras moins de problème.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    542
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 542
    Par défaut
    J'ai mis le cursor en variable globale mais cela ne change en rien le problème.

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/06/2010, 17h05
  2. Problème avec Sqlite lors de la compilation
    Par Jiyuu dans le forum Déploiement/Installation
    Réponses: 6
    Dernier message: 28/11/2009, 18h32
  3. [C#]problème avec SqLite
    Par ClaudeBg dans le forum Linq
    Réponses: 8
    Dernier message: 18/06/2009, 16h17
  4. Problème avec SQLITE
    Par Jiyuu dans le forum Django
    Réponses: 2
    Dernier message: 12/03/2009, 07h07
  5. [PB 6.5] Problème cursor avec DB Oracle 10
    Par TIGROUJ dans le forum Powerbuilder
    Réponses: 0
    Dernier message: 04/12/2008, 15h39

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