Ok, donc je travaille sur ce sujet depuis un moment maintenant, je sais que cela doit être plus facile que de le faire, mais ce que j'essaie de faire est d'avoir ma préférence xml ou Quelque chose que vous voulez appeler, sur cette mise en page j'ai plusieurs cases à cocher un élément de liste et un texte d'édition, ce que je dois faire est d'obtenir ces préférences de la mise en page xml, puis j'ai besoin de les stocker activité. J'ai travaillé un peu avec ceux-ci cependant j'ai toujours eu une activité qui a stocké les cordes alors j'ai prolongé cette activité dans l'activité pour laquelle j'ai besoin des préférences. Je sais qu'il existe des centaines de ces tutoriels partout sur Internet, mais je ne comprends tout simplement pas comment les mettre en œuvre. Heres mon code jusqu'à présent.Tirer une préférence d'une mise en page de préférences xml
public class MyPreference extends PreferenceActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
SharedPreferences sharedPreference = getSharedPreferences("PREFERENCES", Activity.MODE_PRIVATE);
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.layout.random_pref);
// Get the custom preference
final Preference randomPref = (Preference) findPreference("randomPref");
Preference randomDayPref = (Preference) findPreference("randomDayPref");
Preference hourPref = (Preference) findPreference("hourPref");
Preference maxRandomMessagePref = (Preference) findPreference("maxRandomMessagePref");
Preference randomContactsPref = (Preference) findPreference("randomContactsPref");
Preference sendSMSPref = (Preference) findPreference("sendSMSPref");
Preference sendEmailPref = (Preference) findPreference("sendEmailPref");
//Finished
randomPref.setOnPreferenceClickListener(new OnPreferenceClickListener()
{
public boolean onPreferenceClick(Preference preference)
{
return true;
}
});
//Finished
randomDayPref.setOnPreferenceClickListener(new OnPreferenceClickListener()
{
public boolean onPreferenceClick(Preference preference)
{
return true;
}
});
hourPref.setOnPreferenceClickListener(new OnPreferenceClickListener()
{
public boolean onPreferenceClick(Preference preference)
{
return true;
}
});
maxRandomMessagePref.setOnPreferenceClickListener(new OnPreferenceClickListener()
{
public boolean onPreferenceClick(Preference preference)
{
return true;
}
});
randomContactsPref.setOnPreferenceClickListener(new OnPreferenceClickListener()
{
public boolean onPreferenceClick(Preference preference)
{
return true;
}
});
sendSMSPref.setOnPreferenceClickListener(new OnPreferenceClickListener()
{
public boolean onPreferenceClick(Preference preference)
{
return true;
}
});
sendEmailPref.setOnPreferenceClickListener(new OnPreferenceClickListener()
{
public boolean onPreferenceClick(Preference preference)
{
return true;
}
});
}
}
Et mon Heres fichier XML
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
<PreferenceCategory
android:title="Randomization Properties">
<CheckBoxPreference
android:title="Random Delays"
android:summary="Message"
android:defaultValue="false"
android:key="randomPref" />
<CheckBoxPreference
android:title="Throughout The Day"
android:summary="Message"
android:defaultValue="false"
android:key="randomDayPref" />
<ListPreference
android:title="Random Hourly Timings"
android:summary="Message"
android:key="hourPref"
android:defaultValue="6"
android:entries="@array/hours"
android:entryValues="@array/listValues"/>
<EditTextPreference
android:name="Messages"
android:summary="Message"
android:defaultValue="100"
android:title="Messages"
android:key="maxRandomMessagePref" />
</PreferenceCategory>
<PreferenceCategory
android:title="Contacts">
<Preference
android:title="@string/contacts"
android:summary="Message"
android:key="randomContactsPref" />
</PreferenceCategory>
<PreferenceCategory
android:title="Options">
<CheckBoxPreference
android:title="Send Through SMS"
android:summary="Send Messages As Normal"
android:defaultValue="false"
android:key="sendSMSPref" />
<CheckBoxPreference
android:title="Send Trhrough E-Mail"
android:summary="Send Messages Through E-Mail Uses E-Mail Settings"
android:defaultValue="false"
android:key="sendEmailPref" />
</PreferenceCategory>
</PreferenceScreen>
de ce que je vois en ligne je peux avoir besoin de créer un onPrefernceChangeListener()? Je suis vraiment à une perte avec ceci je sais qu'il doit être simple je ne comprends tout simplement pas comment tirer les préférences du xml quand un utilisateur les change et puis les enregistre ainsi mon activité d'homme peut les lire et ajuster en conséquence. Si quelqu'un qui sait ce qu'ils font pourrait me pointer dans la bonne direction ce serait génial.
Si j'utilise mon propre fichier de préférences (non partagé par défaut), il n'enregistre automatiquement les préférences? Ou dois-je faire ça? Si oui, comment puis-je le faire dans 'setOnPreferenceClickListener'? –