2011-05-27 15 views
10

Creo que a muchos de nosotros nos molestaba nombrar las ID de View. A diferencia del mecanismo del paquete, los ID de los recursos en un proyecto están usando un espacio de nombres común. Por lo tanto, tenemos que encontrar formas de nombrar los campos con la misma funcionalidad pero en diferentes archivos de diseño.¿Cuál es su convención de nomenclatura para los identificadores de vista?

Mi manera es agregar el nombre o el verbo que el nombre de la clase Acitvity del archivo de diseño utiliza en el frente de la ID original, separados por un punto. Por ejemplo, una ID originalmente llamada "descripción" en una actividad que muestra la información de una película puede convertirse en "movie.details.description".

¿Hay alguna idea mejor?

+0

http://stackoverflow.com/questions/12870537/android-naming-convention –

Respuesta

4

Primero utiliza el mismo concepto pero ahora Intento usar identificadores más genéricos. En su caso, simplemente llamaría al ID description. Por lo tanto, no necesita una ID para cada elemento y puede reutilizarlos, ya que no importa a qué diseño se refiera cuando llame a findViewById (R.id.description), sabrá que obtiene el elemento de descripción de este diseño.

Por supuesto, debe saber si su diseño tiene un elemento de descripción. Esto podría ser una desventaja.

3

Interesante pregunta. Dado que Google no ha publicado una guía de estilo oficial (o de la comunidad, lo que podría estar equivocado al respecto, pero no encontré ninguna en Google), podría ser un poco subjetivo. Tienes que usar el estilo que te hace sentir cómodo a ti y a tu equipo.

Mi convención de nomenclatura es la siguiente:

activityname_elementtype_explicitdescription_suffix

Por ejemplo un botón Login define dentro de la actividad Home puede llegar a ser:

home_btn_login

+5

No tiene mucho sentido hacer referencia a la actividad en su ID, ya que no es posible acceder a otras vistas de actividad utilizando findViewById(). Entonces es imposible atrapar el conflicto aquí. –

+0

En este ejemplo, podría no tener sentido. Pero, ¿qué pasa con las claves contenidas en valores/cadena? –

+0

En valores/cadena es necesario estoy de acuerdo. –

Cuestiones relacionadas