Comment puis-je implémenter une préférence qui affiche une simple boîte de dialogue de confirmation oui / non?
Pour un exemple, voir Browser->Setting->Clear Cache
.
Comment puis-je implémenter une préférence qui affiche une simple boîte de dialogue de confirmation oui / non?
Pour un exemple, voir Browser->Setting->Clear Cache
.
C'est une simple boîte de dialogue d'alerte , Federico vous a donné un site où vous pouvez rechercher des choses.
Voici un court exemple de la manière dont une boîte de dialogue d'alerte peut être créée.
new AlertDialog.Builder(this)
.setTitle("Title")
.setMessage("Do you really want to whatever?")
.setIcon(android.R.drawable.ic_dialog_alert)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Toast.makeText(MainActivity.this, "Yaay", Toast.LENGTH_SHORT).show();
}})
.setNegativeButton(android.R.string.no, null).show();
Android est livré avec une classe YesNoPreference intégrée qui fait exactement ce que vous voulez (une boîte de dialogue de confirmation avec des options oui et non). Voir le code source officiel ici .
Malheureusement, il est dans le
com.android.internal.preference
package, ce qui signifie qu'il fait partie des API privées d'Android et que vous ne pouvez pas y accéder depuis votre application (les classes d'API privées sont sujettes à modification sans préavis, d'où la raison pour laquelle Google ne vous permet pas d'y accéder).Solution: recréez simplement la classe dans le package de votre application en copiant / collant le code source officiel à partir du lien que j'ai fourni. J'ai essayé ceci, et cela fonctionne bien (il n'y a aucune raison pour que cela ne le soit pas)
Vous pouvez ensuite l'ajouter à votre
preferences.xml
préférence comme n'importe quelle autre. Exemple:Ce qui ressemble à ceci:
la source
Utilisez la préférence d'intention si vous utilisez l'écran de préférence xml ou vous si vous utilisez votre écran personnalisé, le code serait comme ci-dessous
Et puis créez une classe d'activité un peu comme ci-dessous, en tant que personnes différentes comme approche différente, vous pouvez utiliser n'importe quelle approche que vous aimez, ce n'est qu'un exemple.
Comme indiqué précédemment, il existe plusieurs façons de procéder. c'est l'une des façons dont vous pouvez faire votre tâche, veuillez accepter la réponse si vous sentez que vous avez obtenu ce que vous vouliez.
la source