# KC. Nomenclatura de drawables
###### tags: `foro`
button__loquesea
background__palante
shadow__esamismo
### Propuestas
shape__
selector__
layer-list__
### svg, bitmap, png, jpg
- img__
- ic__


Sacar listado de elementos habituales, y decidir el nombre que usamos
fondo -> bg/background
icono -> ic/icon
## Propuesta Nomenclatura de Drawables
### General
Todos los recursos *Drawable* deberán seguir de manera general la siguiente nomenclatura, siempre y cuando no tenga especificado un prefijo concreto
Plantilla: `element_name__context_descriptive`
Ejemplo: `transition__fade_in`
### Iconos
Iconos de la aplicación, .png, o .svg o todo aquello que en mdpi por lo general miden 24 x 24 y cuyo objetivo es únicamente el de ser un dibujito.
- Prefijos: ic, icon
### Indicadores de progreso
Una <layer-list> que contiene al menos una <shape> con el id @android:id/progress (opcionalmente también @android:id/background) y que sirve para crear una ProgressBar.
- Prefijos: progress, progress_bar, pgr
### Efecto de ondas
Un `<ripple>` que sirve para el efecto de ondas de cualquier elemento al que se lo pongas
- Prefijos: ripple, rpl
### Selectores
Un <selector> con diferentes estados y que puede servir para múltiples tipos de vista. Salvo si es un icono, en cuyo caso es más importante saber que es un icono de que sea un selector y se nombra como los iconos.
- Prefijos: selector, sel
### Selector para RadioButton
Un <selector> con drawables cuyo único propósito es ser usado en un RadioButton. Cada uno de los iconos dentro de este será nombrado como un icono.
- Prefijos: radio, radio_button, rdb
### Selector para CheckBox
Un <selector> cuyo único propósito es ser usado en un CheckBox. Cada uno de sus drawable será nombrado como un icono.
- Prefijos: check, check_box, chk
### Recorrido de un Switch
Cualquier recurso cuyo único propósito sea ser utilizado como el recorrido de un Switch. Cada uno de sus drawables será nombrado como un icono.
- Prefijo: switch_track, sw_track, swt
### Indicador de un Switch
Cualquier recurso cuyo único propósito sea ser utilizado como el indicador de un Switch.
- Prefijo: switch_indicator, sw_indicator, swi
### Separadores
Cualquier recurso cuyo único propósito sea el de actuar como separador de entre items o entre vistas.
- Prefijo: sep, separator, div, divider
### Degradados
Un <gradient> con múltiples propósitos, ser el fondo de una vista, el color de texto, el color de un recorrido de un Switch o lo que se os ocurra.
- Prefijos: grd, gradient
### Fondos
Un recurso que se usa sencillamente como un fondo y nada más y no parece entrar en ninguna de las definiciones anteriores. Puede ser cualquier tipo de recurso, una <shape>, una <layer-list> un .svg, un .jpg, (un <selector> no porque se nombraría como selector, que es más identificativo).
- Prefijos: background, bg
### Imágenes
Un recurso de imagen (por lo general de gran tamaño, en contraposición con un icono) que, al contrario que un fondo, se pondría en el atributo android:src de un ImageView, y no en android:background.
- Prefijos: img, image