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 :

lister mes préférences


Sujet :

Android

  1. #1
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    289
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2008
    Messages : 289
    Points : 151
    Points
    151
    Par défaut lister mes préférences
    bonjour,
    je tente de manipuler des préférences en utilisant un fragment. Pour en maîtriser le fonctionnement, je travaille d'abord sur un projet dans lequel je me suis fixé un fragment avec un EditTextPreference pour en afficher la valeur.
    Mon fichier preferences.xml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?xml version="1.0" encoding="utf-8"?>
    <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
     
        <EditTextPreference
            android:key="pref_ipaddr"
            android:title="@string/pref_ipaddr"
            android:summary="@string/pref_ipaddr_summ"
            android:textSize="35sp"
            android:paddingTop="100dp"
            android:inputType="numberDecimal"
            android:defaultValue="0.0.0.0" />
     
    </PreferenceScreen>
    Mon fichier SecondActivity qui met en place le fragment
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public class SecondActivity extends AppCompatActivity {
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_second);
            Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
            setSupportActionBar(toolbar);
     
            getFragmentManager().beginTransaction()
                    .replace(android.R.id.content, new SettingsFragment())
                    .commit();
    Mon fichier SettingsFragment:
    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
     
    public class SettingsFragment extends PreferenceFragment {
     
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
     
            // Load the preferences from an XML resource (le fichier res/xml/preferences.xml)
            addPreferencesFromResource(R.xml.preferences);
            //Afficher les préférences
            SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
     
            if(prefs.contains("pref_ipaddr"))
                System.out.println("prefs contains pref_ipaddr");
            else System.out.println("prefs don't contains pref_ipaddr");
            System.out.println("preference file ipaddr = " + prefs.getString("pref_ipaddr", "Houps!"));
        }
    A l'exécution, dans la fenêtre console, j'ai toujours l'affichage:
    prefs contains pref_ipaddr
    preference file ipaddr = true

    Je ne comprend pas le "true". Je m'attends à avoir la valeur 0.0.0.0 qui est celle de l'attribut android:defaultValue de l'EditTextPreference.
    Si quelqu'un a une idée, je prend.

    Deuxio, si je rajoute des EditTextPreference dans le preferences.xml, comment dois-je m'y prendre pour afficher le nombre de préférences et leur contenu respectif ?

    Merci.

  2. #2
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2014
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Août 2014
    Messages : 262
    Points : 634
    Points
    634
    Par défaut
    Bonjour rdtech,

    comment tu vas ? Je vois une incohérence dans ton fichier preferences.xml, particulièrement ces lignes suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    android:inputType="numberDecimal"
            android:defaultValue="0.0.0.0"
    Tu dis que le type de ta zone de saisie est un nombre décimal et tu lui donne comme valeur par défaut une adresse ip

    qui n'est aucunement pas un nombre décimal ! Essaies de corriger cela, si çà ne va toujours pas, désinstalle manuellement

    l'application sur le téléphone/l'émulateur sur lequel tu fais tes tests et tu reinstalle.

    __salut !
    Aujourd'hui apprenant, demain appreneur.
    N'accuse pas le puits d'être trop profond,
    c'est peut-être ta corde qui est trop courte

  3. #3
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    289
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2008
    Messages : 289
    Points : 151
    Points
    151
    Par défaut
    Salut Iankoande,
    merci pour ta remarque. Je fonctionne en auto apprentissage avec un collègue et nous avons découvert que l'attribut inputType influençait le type du clavier. On a joué avec ça et j'ai laissé trainé...
    J'exécute mon code directement sur un vrai téléphone.
    Sinon, lister mes préférences à titre d'exercice, ça a un sens? c'est possible?

    Je te remercie.

  4. #4
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2014
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Août 2014
    Messages : 262
    Points : 634
    Points
    634
    Par défaut
    Citation Envoyé par rdtech Voir le message
    Salut Lankoande,
    merci pour ta remarque. Je fonctionne en auto apprentissage avec un collègue et nous avons découvert que l'attribut inputType influençait le type du clavier. On a joué avec ça et j'ai laissé trainé...
    J'exécute mon code directement sur un vrai téléphone.
    Sinon, lister mes préférences à titre d'exercice, ça a un sens? c'est possible?

    Je te remercie.
    Pas de quoi rdtech. Moi également je fais de l'auto apprentissage sur ce langage parce qu'en classe nous en n'avons pas abordé.
    Aussi c'est possible de lister les préférences et çà également un sens ! Tout dépend de l'utilisation qu'on veut en faire et l'accès aux valeurs
    est d'ailleurs très fréquents qu'on ne le pense !

    __salut !
    Aujourd'hui apprenant, demain appreneur.
    N'accuse pas le puits d'être trop profond,
    c'est peut-être ta corde qui est trop courte

  5. #5
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    289
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2008
    Messages : 289
    Points : 151
    Points
    151
    Par défaut
    Bonjour,
    dans la doc, je ne lis rien sur la manière et le quand de la création de ce "fichier" qui mémorise les paires clé/valeur de l'application.
    Les attributs key et defaultvalue sont-ils associés et mémorisés lors du premier lancement de l'appli?
    Le fonctionnement est-il le même pour une preferenceActivity et un fragment?

    Une idée ou une piste ??

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lister mes adresses ip avec WMI
    Par raphxyz dans le forum VB.NET
    Réponses: 9
    Dernier message: 18/07/2013, 22h50
  2. Problèmes avec mes Préférences
    Par xXO--Hades--OXx dans le forum Android
    Réponses: 2
    Dernier message: 13/02/2011, 16h49
  3. Lister mes sous-sites dans une liste
    Par rohstev dans le forum Développement Sharepoint
    Réponses: 2
    Dernier message: 09/11/2010, 16h49
  4. Lister mes onglets
    Par Stargate SG1 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/12/2007, 08h54
  5. Lister le contenu de toutes mes tables.
    Par Picco dans le forum Oracle
    Réponses: 6
    Dernier message: 07/03/2006, 19h18

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