web-dev-qa-db-fra.com

Android Android

Android est livré avec de nombreuses ressources système (Android.R) qui peut être utilisé pour vous faire gagner du temps et alléger votre application.

Par exemple, j'ai récemment découvert que Android fournit des chaînes localisées pour Yes (Android.R.string.yes), Non (Android.R.string.no), Annuler (Android.R.string.cancel) et Ok (Android.R.string.ok), entre autres chaînes.

Quelles autres ressources système recommandez-vous d'utiliser? Ou y a-t-il une raison pour éviter d'utiliser les ressources système?

Edit: Comme l'a noté Tomas, certaines de ces ressources peuvent ne pas produire les résultats que vous attendez (en particulier, Android.R.string.yes/no Retour OK/Cancel au lieu de Yes/No, comme indiqué ici ). Pour un meilleur contrôle, vous pouvez copier les ressources système à partir du code source Android.

50
hpique

Vous pouvez trouver une liste complète de toutes les ressources système dans le package Android .

Chaque fois que je veux faire quelque chose sur Android je vérifie s'il y a une ressource système qui couvre ce que je veux faire. Il est utile d'importer le Android = code source (en particulier, leur dossier/res / ) lors de la recherche des ressources déjà implémentées que vous souhaitez, afin que vous puissiez voir leur implémentation spécifique.

Personnellement, je me retrouve le plus souvent à utiliser:

  • Built-in Android dispositions pour les tâches standard, telles que les listes déroulantes de spinner.
  • Identifiants Android (Android.R.id), car vous devez souvent les utiliser si vous souhaitez utiliser certains widgets d'Android (par exemple, TabHost/TabWidget vous oblige à utiliser "Android:id/tabhost "," Android:id/tabs" et "Android:id/tabcontent "si vous souhaitez implémenter une disposition XML).
  • Couleurs intégrées, en particulier Android.R.color.transparent.
  • Animations intégrées de fondu d'entrée et de sortie d'Android dans Android.R.anim.
52
Daniel Lew

Vous pouvez accéder aux ressources système à partir de xml en les qualifiant avec le Android, c'est-à-dire "@Android:string/ok"

16
ehartwell

Comme CommonsWare l'a mentionné, vous n'avez pas à télécharger le Android pour inspecter les ressources; allez simplement à <Android-sdk-dir>/platforms/Android-X.X/data/res/. Cependant, si vous commencez à les utiliser, vous deviendrez rapidement déçu de constater que la plupart d'entre eux sont pas disponibles via la classe Android.R. La plupart du temps, je dois les importer dans mon espace de travail Eclipse de toute façon. :-(

Mes ressources préférées sont les drawables qui s'affichent différemment en fonction des états focalisés/enfoncés/désactivés d'un contrôle (comme Android.R.drawable.btn_default). Je les utilise ou les ajuste pour créer des boutons personnalisés pour mes applications. Comme vous pouvez le voir si vous regardez /data/res/drawable/btn_default.xml, Ils sont définis comme un élément XML <selector>, Qui est gonflé dans un StateListDrawable au moment de l'exécution. Vous pouvez également créer vos propres StateListDrawables et ils sont super utiles, à la fois comme arrière-plans de vue et comme "composant dessinable" d'un bouton (voir TextView.setCompoundDrawables()).

6
Neil Traft

Veuillez noter que les traductions sont vraiment mauvaises.

Par exemple, le "non" allemand dans Android-25 est "Abbrechen" qui signifie en fait "annuler". "Oui" est traduit par "OK" ...

Je ne sais pas à quel point les autres langues sont bonnes, donc j'utiliserais une propre traduction.

1
Thomas_D