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 :

Nombre de fichiers préférences pour une activité?


Sujet :

Android

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2010
    Messages : 277
    Par défaut Nombre de fichiers préférences pour une activité?
    Bonjour

    Est il possible d'avoir plusieurs fichiers préférences pour une seule activité.

    en fonction du bouton appuyer sur l'activité précédente j'aimerai chargé des préférences différentes a l'ouverture de la deuxième activité.


    Merci d'avance
    Gilles

  2. #2
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2014
    Messages : 64
    Par défaut
    Bonjour,

    tu fais référence à SharedPreferences lorsque tu écris "fichiers préférences" ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2010
    Messages : 277
    Par défaut
    Bonjour

    Oui c'est cela désolé de ne pas avoir employé le bon jargon, je suis débutant.

    Je me posais également la question, du temps de chargement d'un fichier SharedPreferences s'il était gros (environ 100 lignes)
    Parce que si je ne peux pas avoir plusieurs SharedPreferences sur une activité, je peux toujours les répartir en categories.
    Mais la lecture risque de prendre du temps, qu'en pensez vous?

  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
    Oui tu peux nommer tes fichiers préférences donc en avoir plusieurs. Après un fichier de 100 lignes ca consomme que dalle .

  5. #5
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2010
    Messages : 277
    Par défaut
    Merci pour la reponse

    Aurais tu la manière de faire le deuxieme fichier ainsi que pour le lire

    je fais le premier comme cela s'il n'a jamais été fabriquer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PreferenceManager.setDefaultValues(this, R.xml.pref_ipx, false)
    je le lis comme cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Relais.setDescriptionRelais(prefs.getString("relais_"+i, ""));
    comment faire avec le deuxieme.

    Merci
    Gilles

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2014
    Messages : 64
    Par défaut
    ca serait plutôt comme ceci qu'il faudrait faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    SharedPreferences pref1 = getSharedPreferences("My_FIRST_PREF", Context.MODE_PRIVATE);
    SharedPreferences pref2 =  getSharedPreferences("My_SECOND_PREF", Context.MODE_PRIVATE);
     
    //Lorsque tu veux ajouter dans les preferences 1:
    pref1.edit().putString("name", "ma_chaine").apply();
    //récupérer cet élèment ajouté
    pref1.getString("name", "");
     
    //idem avec les preferences 2
    pref2.edit().putString("name", "ma_chaine").apply();
    pref2.getString("name", "");

  7. #7
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Et en mettant toutes les clés en constante histoire de ne pas avoir de mauvaise surprise et faciliter la maintenance et la lisibilité
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  8. #8
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Par défaut
    et/ou en créant une classe d'accès aux préférences avec des méthodes statiques. Comme cela, on gère les préférences à un seul endroit dans notre programme

  9. #9
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2010
    Messages : 277
    Par défaut
    Merci de vos réponses

    Estérésis
    Je vais essayer, je reviendrai pour donner le résultat.

    Hizin
    Je fais une boucle sur le nom des clés c'est pour ca que je ne les ai pas mises en constante.
    De plus si j'arrive a avoir 2 fichiers xml de préférences, alors les noms des clés seront les même, car un seul fichier doit être chargé.

    David55
    J'ai un loader qui tourne dans un thread séparé pour chargé le fichier de préférences, c'est lui qui me détecte si une préférence a changé afin que je puisse l'afficher immédiatement.

    Ensuite je ne fais qu'interroger les clés pour savoir ce qu'il y a dedans et afficher ma liste.
    Je ne vois pas l' intérêt de faire une classe d’accès aux préférences (je rappelle que je suis débutant)

    Gilles

Discussions similaires

  1. Réponses: 3
    Dernier message: 13/04/2010, 13h54
  2. plusieurs fichier properties pour une JSP
    Par francon81 dans le forum Struts 1
    Réponses: 1
    Dernier message: 15/02/2007, 16h00
  3. Nombre max d'utilisateurs pour une base de données
    Par romrai dans le forum Access
    Réponses: 18
    Dernier message: 10/07/2006, 16h28
  4. Réponses: 5
    Dernier message: 10/03/2006, 17h13
  5. [débutant]ou mettre un fichier java pour une appli jsp?
    Par zozolh2 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 11/05/2004, 15h20

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