¿Puedo usar el mismo id en diferentes diseños en Android?

Soy nuevo en el desarrollo de Android. ¿Está bien usar el mismo ID para imágenes y TextViews en diferentes archivos XML de Layout ?

Cuando eclipse auto-lista para mí, que muestra todas las variables de diseño del proyecto, por lo que se chocan? Hasta ahora no he notado ningún problema con el mismo ID en diferentes diseños, pero me preocupa a largo plazo.

Se recomienda que utilice ids diferentes para diferentes diseños. En el largo plazo, cuando usted tendrá un montón de diseños y por lo tanto un montón de ids se hará muy complicado para diferenciarlos.

Por lo general, el nombre de mis ids como este: layoutName_elementId .

Funciona para que pueda encontrar fácilmente el ID que busco, especialmente cuando se usa autocompletar (sé en qué diseño estoy trabajando, pero en realidad no conozco el id; en este caso, con mi estrategia de nomenclatura, Sólo escriba el nombre de diseño y trae en todos los ids de ese diseño).

Puede encontrar más información sobre diseños e IDs aquí .

Codificación feliz,

Respuesta corta: Sí, usted puede.

Respuesta larga: puede hacerlo porque cada vez que utiliza findViewById () para obtener una referencia a una parte de su diseño, el método sólo busca esa vista en el diseño actualmente inflado. Así que incluso si tiene otra vista con el mismo ID en otro diseño, Android no lo buscará allí.

Según las guías API del desarrollador:

Un ID no necesita ser único en todo el árbol, pero debe ser único dentro de la parte del árbol que está buscando (que a menudo puede ser el árbol entero, por lo que es mejor ser completamente único cuando sea posible).

Así que la respuesta corta es que no es obligatorio, pero es una buena práctica para evitar posibles conflictos.

  • SetMargin Programmatically no funciona correctamente para RelativeLayoutParams
  • ¿Es posible ajustar el adaptador al diseño lineal?
  • No se puede resolver el símbolo abc_ic_search_api_mtrl_alpha
  • Cómo deshabilitar detrás de ver haga clic en evento Framelayout
  • No se puede usar Studio Designer con una clase derivada RelativeLayout personalizada
  • Agregar Layout de forma programática dentro de otro
  • Android: establecer la altura mínima de una vista mediante programación
  • Com.android.layoutlib.bridge.MockView no se puede convertir en android.view.ViewGroup
  • ¿Cómo evito completamente que TextView se desplace?
  • WindowSoftInputMode y ScrollView
  • Error al convertir @ drawable / en un drawable
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.