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 :

SharedPreferences problème d'affichage


Sujet :

Android

  1. #1
    Membre à l'essai
    Homme Profil pro
    élève
    Inscrit en
    Mars 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : Suisse

    Informations professionnelles :
    Activité : élève
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 14
    Points : 14
    Points
    14
    Par défaut SharedPreferences problème d'affichage
    Bonjour,

    je fais une application qui à un menu avec une RecyclerView de CardView, j'aimerais faire en sorte que l'utilisateur puisse ajouter au favori une cardView, sachant qu'une cardView représente un pays. Voilà mon application:

    Nom : application_u_c_material.png
Affichages : 88
Taille : 392,4 Ko

    Voilà le code lorsque nous cliquons sur le bouton en étoile:

    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
    myViewHolder.btnfav.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  switch (position) {
                      case 0:
                          SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(v.getContext());
                          SharedPreferences.Editor editor = preferences.edit();
                          editor.putString(FAVORITE_PAYS, String.valueOf(v.getId()));
                          editor.commit();
                          break;
     
                      case 1:
                          SharedPreferences preferences1 = PreferenceManager.getDefaultSharedPreferences(v.getContext());
                          SharedPreferences.Editor editor1 = preferences1.edit();
                          editor1.putString(FAVORITE_PAYS, String.valueOf(v.getId()));
                          editor1.commit();
     
                          break;
     
                      case 2:
                          SharedPreferences preferences2 = PreferenceManager.getDefaultSharedPreferences(v.getContext());
                          SharedPreferences.Editor editor2 = preferences2.edit();
                          editor2.putString(FAVORITE_PAYS, String.valueOf(v.getId()));
                          editor2.commit();
     
                          break;
     
                      case 3:
                          SharedPreferences preferences3 = PreferenceManager.getDefaultSharedPreferences(v.getContext());
                          SharedPreferences.Editor editor3 = preferences3.edit();
                          editor3.putString(FAVORITE_PAYS, "3");
                          editor3.commit();
     
                          break;
     
                      case 4:
                          SharedPreferences preferences4 = PreferenceManager.getDefaultSharedPreferences(v.getContext());
                          SharedPreferences.Editor editor4 = preferences4.edit();
                          editor4.putString(FAVORITE_PAYS, "4");
                          editor4.commit();
                          break;
     
                      default:
                          Toast.makeText(v.getContext(), "Ce pays ne peut pas être ajouté aux favoris", Toast.LENGTH_SHORT).show();
                          break;
                  }
              }
          });
    Le switch fonction bien, je 'ai testé avec un toast pour chaque case.

    Maintenant je voudrais retourner à l'utilisateur un fragment qui contient les favoris qu'il a sélectionner, je n'ai aucune idée de comment faire cela. Je suis ici pour voir une aide.
    Si vous vous avez besoin de plus d'information demander moi.
    Merci d'avance.

  2. #2
    Expert éminent

    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
    Points : 9 149
    Points
    9 149
    Par défaut
    Ben tu es bien parti tu gardes le même principe en tête sauf que dans le nouvel fragment tu réaffiches ton recycler View avec les éléments que tu as sauvegardé dans les préférenes.

    Tu recharges le tout .
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  3. #3
    Membre à l'essai
    Homme Profil pro
    élève
    Inscrit en
    Mars 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : Suisse

    Informations professionnelles :
    Activité : élève
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 14
    Points : 14
    Points
    14
    Par défaut
    Alors la façons dont je fais mes sharedprefenferences est bonne ? Parce que j'ai vraiment un doute.

  4. #4
    Expert éminent

    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
    Points : 9 149
    Points
    9 149
    Par défaut
    Euh sur le code oui, après de ce que je vois tu n'auras qu'un et un seul pays dans les préférence en tant que favoris.

    En gros quand tu appelles la méthode put tu vas écraser la valeur lié avec ta clé FAVORITE_PAYS que tu utilises.
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

Discussions similaires

  1. Problème d'affichage
    Par mustang-gx dans le forum Bases de données
    Réponses: 8
    Dernier message: 26/01/2005, 22h54
  2. Problème d'affichage avec trace
    Par WriteLN dans le forum Flash
    Réponses: 10
    Dernier message: 22/10/2003, 16h59
  3. [Kylix] problème d'affichage
    Par scalvi dans le forum EDI
    Réponses: 1
    Dernier message: 18/06/2003, 10h07
  4. Réponses: 1
    Dernier message: 06/03/2003, 11h57
  5. probléme d'affichage d'une fiche
    Par sb dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 09h43

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