¿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.
- El estilo de Button es añadir atributo desconocido - Android
- Android: mostrar / ocultar una vista utilizando una animación
- ¿Por qué RecyclerView.notifyItemChanged () creará un nuevo ViewHolder y utilizará tanto el antiguo ViewHolder como el nuevo?
- Vista de texto de Autocompletar de Twitter como Android
- Android Studio 2.0 (Vista previa 3b) xml cambios de diseño no se actualiza en apk?
- Imitar menú ActionBar con ImageButton
- Cómo lidiar con el límite de tamaño de textura de Android
- StaggeredGridView establece el ancho y la altura para determinada imagen
- Diferencia entre android: y app: prefix en Android XML?
- El tamaño de la vista de la imagen de Android no se escala con la imagen
- Problemas de renderización de Android GIF
- Disposición de respuesta de Android
- Uso del comportamiento personalizado para crear múltiples "puntos de anclaje" / posiciones para CollapsingToolbar
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.
- OnGlobalLayoutListener: depreciación y compatibilidad
- Android acelerómetro no funciona cuando se desactiva la pantalla