61 votes

Utiliser une ListView pour créer un écran de paramètres dans Android ?

Je suis en train de développer ma première application Android, et j'aimerais créer un écran de paramètres.

J'aimerais que l'écran ait une apparence similaire à celle des écrans de configuration du téléphone et de l'écran "créer/modifier une alarme". Donc avec différents types d'éléments (définis statiquement) empilés verticalement avec une fine ligne entre eux.

Comment définir un tel écran ?

Je sais que je peux utiliser le ListView, mais il semble qu'il soit principalement destiné à servir des données dynamiques à l'aide d'un ListAdapter, où chaque élément est servi dans le même format. Il semble possible de créer différents éléments (c'est-à-dire, certains avec une case à cocher, d'autres avec deux lignes de texte, d'autres encore avec une icône) en créant mon propre adaptateur de liste et en surchargeant getView, mais cela semble excessif. Devrais-je utiliser une ListView à cette fin ?

122voto

Dave Webb Points 90034

Il n'est pas nécessaire de créer et de formater manuellement une ListView - il existe des moyens dans l'API de créer des écrans de préférences.

Le plus évident est PreferenceActivity .

Vous pouvez définir toutes vos préférences dans un fichier XML, un peu comme une mise en page, et ensuite les charger avec addPreferencesFromResource() ou vous pouvez créer un certain nombre de PreferenceScreen dans le code et les remplir avec Preference des objets de cette manière.

La meilleure chose à faire est de consulter l'application API Demos fournie avec l'API Android. Elle contient beaucoup de bons exemples de gestion des préférences. Voici comment il crée des préférences à partir du code et voici un exemple de fichier XML de préférences . Il existe d'autres exemples montrant des choses plus avancées comme les dépendances de préférences et les écouteurs de préférences.

2voto

tbruyelle Points 5323

En fait, dans l'application d'alarme intégrée, pour modifier y crear alarme, il y a 2 activités, l'une pour crear et un pour modifier .

El Créer une alarme L'activité est la première avec l'horloge numérique.
Le site Modifier l'alarme L'activité est lancée en cliquant sur une alarme répertoriée dans l'écran Créer une alarme activité.

Modifier l'alarme met en œuvre PreferenceActivity mais Créer une alarme est plus complexe (adaptateur de curseur personnalisé pour lister les alarmes).

Jetez un coup d'œil à la sources :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X