xXO-Hades-OXx Posted December 2, 2010 Share Posted December 2, 2010 Bonjour, Je pense que le titre est explicite mais je vais détailler.. Voilà dans mon application, j'ai une activity pour mes preferences. Dans cette activity, j'ai une listPreferences appelée"Style de Thème" et dans cette liste, j'ai trois items : - Défaut - Saphir - Rubis Ce que je voudrais faire, c'est qu'à la sélection d'un de ces items, un background s'applique à mon application mais je n'arrive pas à récupérer les items et à y appliquer le background associé.. import android.content.SharedPreferences; import android.content.SharedPreferences.OnSharedPreferenceChangeListener; import android.os.Bundle; import android.preference.Preference; import android.preference.Preference.OnPreferenceChangeListener; import android.preference.PreferenceActivity; import android.widget.Toast; public class MesPreferences extends PreferenceActivity implements OnSharedPreferenceChangeListener{ SharedPreferences pref; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.mespreferences); pref = getPreferenceManager().getSharedPreferences(); pref.registerOnSharedPreferenceChangeListener(this); Preference listpref = (Preference) findPreference("listThème"); listpref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { return false; } }); } public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,String key) { Toast.makeText(this, sharedPreferences.getString(key, ""), Toast.LENGTH_SHORT).show(); } } Si quelqu'un pouvait me donner le bout de code manquant svp ce serait sympathique ;) Link to comment Share on other sites More sharing options...
Sylvaner Posted December 3, 2010 Share Posted December 3, 2010 Exemple pour récupérer ta valeur dans ton "Activity" principale : SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); String theme = prefs.getString("listeThème", "Défaut"); Je sais pas si c'est bien ça que tu veux mais voilà comment moi je fais. Mais les variables avec les accents c'est conseillé ? Link to comment Share on other sites More sharing options...
xXO-Hades-OXx Posted December 3, 2010 Author Share Posted December 3, 2010 Mais les variables avec les accents c'est conseillé ? Bah je ne sais pas trop mais j'ai modifié quand même par "listT".. Mais si je veux y associer un backrgound à cet item comment je fais car je lutte pour trouver cette solution depuis 2 jours au moins! Link to comment Share on other sites More sharing options...
Sylvaner Posted December 3, 2010 Share Posted December 3, 2010 String image = prefs.getString("listeThème", "Défaut"); ((ImageView) findViewById(R.id.tonImage)).setImageResource(((getResources().getIdentifier(image, "raw", "com.nomdetonpackage.opla")))); par exemple Link to comment Share on other sites More sharing options...
xXO-Hades-OXx Posted December 3, 2010 Author Share Posted December 3, 2010 Ok merci beaucoup mais à quoi correspond le "raw"? Link to comment Share on other sites More sharing options...
xXO-Hades-OXx Posted December 8, 2010 Author Share Posted December 8, 2010 Quelqu'un pourrait-il faire un tuto sur le sujet svp?? Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.