A quoi sert ids.xml?

Juste une question rapide, quel est le ids.xml utilisé lors du développement d’une application Android? J’ai vu un exemple sur la page Web des ressources Android qui contenait:

   

A quoi cela servirait-il?

id.xml est généralement utilisé pour déclarer les identifiants que vous utilisez pour les vues dans les présentations.

vous pourriez utiliser quelque chose comme

  

pour votre xml donné.

ids.xml a l’avantage suivant: tous les identifiants ont été déclarés, le compilateur peut donc les reconnaître. Si quelque chose comme ça:

   

Peut entraîner une erreur de compilation car text2 a été référencé avant d’être déclaré

Lors de la création dynamic de vues, la définition préalable des identifiants dans ids.xml permet de référencer une vue nouvellement créée. Après avoir utilisé la setId(id) , vous pouvez accéder à la vue comme si elle avait été définie en XML. Cet article de blog a un bel exemple.

Une autre application pour id.xml concerne les mises en page et les projets de bibliothèque. Disons que vous spécifiez une liste générique d’options dans une disposition de bibliothèque (boîte de dialog)

  

et gérer ces vues dans un fragment générique (boîte de dialog)

 optionOneCheck = (CheckedTextView)rootView.findViewById(R.id.checked_option_one); optionTwoCheck = (CheckedTextView)rootView.findViewById(R.id.checked_option_two); 

Si vous supprimez l'une des déclarations de vue d'une copie de la mise en page dans un projet principal, vous obtiendrez une exception d'erreur "pas de champ" au moment de l'exécution.

Le compilateur ne se plaint pas, mais à l'exécution, l'ID n'est pas présent.

Déclarer les identifiants dans id.xml et en utilisant

  

évite l'erreur d'exécution