Esta es una convención para la nomenclatura de tu código para la asignatura, no es obligatoria usarla, pero facilita el entendimiento y lectura del código por todos.
Naming convention for Xml files
activity_<ACTIVITY NAME>.xml – for all activities
dialog_<DIALOG NAME>.xml – for all custom dialogs
row_<LIST_NAME>.xml – for custom row for listview
fragment_<FRAGMENT_NAME>.xml – for all fragments
Naming convention for component/widget in java and xml ids:
All components for X activity must start with the prefix or short name like btn for Button For example,name for login activity component should be like following.
btnLogin
etUsername
etPassword
Short name of major components:
Button – btn
EditText – et
TextView – tv
Checkbox – chk
RadioButton – rb
ToggleButton – tb
Spinner – spn
Menu – mnu
ListView – lv
GalleryView – gv
LinearLayout -ll
RelativeLayout – rl
TimePicker – tp
DatePicker – dp
Resources files
Resources file names are written in lowercase_underscore.
Naming conventions for drawables:
Asset Type | Prefix | Example |
---|---|---|
Action bar | ab_ |
ab_stacked.9.png |
Button | btn_ |
btn_send_pressed.9.png |
Dialog | dialog_ |
dialog_top.9.png |
Divider | divider_ |
divider_horizontal.9.png |
Icon | ic_ |
ic_star.png |
Menu | menu_ |
menu_submenu_bg.9.png |
Notification | notification_ |
notification_bg.9.png |
Tabs | tab_ |
tab_pressed.9.png |
Naming conventions for icons
Asset Type | Prefix | Example |
---|---|---|
Icons | ic_ |
ic_star.png |
Launcher icons | ic_launcher |
ic_launcher_calendar.png |
Menu icons and Action Bar icons | ic_menu |
ic_menu_archive.png |
Status bar icons | ic_stat_notify |
ic_stat_notify_msg.png |
Tab icons | ic_tab |
ic_tab_recent.png |
Dialog icons | ic_dialog |
ic_dialog_info.png |
Naming conventions for selector states:
State | Suffix | Example |
---|---|---|
Normal | _normal |
btn_order_normal.9.png |
Pressed | _pressed |
btn_order_pressed.9.png |
Focused | _focused |
btn_order_focused.9.png |
Disabled | _disabled |
btn_order_disabled.9.png |
Selected | _selected |
btn_order_selected.9.png |
Layout files
Layout files should match the name of the Android components that they are intended for but moving the top level component name to the beginning. For example, if we are creating a layout for the SignInActivity
, the name of the layout file should be activity_sign_in.xml
.
Component | Class Name | Layout Name |
---|---|---|
Activity | UserProfileActivity |
activity_user_profile.xml |
Fragment | SignUpFragment |
fragment_sign_up.xml |
Dialog | ChangePasswordDialog |
dialog_change_password.xml |
AdapterView item | — | item_person.xml |
Partial layout | — | partial_stats_bar.xml |
A slightly different case is when we are creating a layout that is going to be inflated by an Adapter
, e.g to populate a ListView
. In this case, the name of the layout should start with item_
.
Note that there are cases where these rules will not be possible to apply. For example, when creating layout files that are intended to be part of other layouts. In this case you should use the prefix partial_
.
Menu files
Similar to layout files, menu files should match the name of the component. For example, if we are defining a menu file that is going to be used in the UserActivity
, then the name of the file should be activity_user.xml
A good practice is to not include the word menu
as part of the name because these files are already located in the menu
directory.
Values files
Resource files in the values folder should be plural, e.g. strings.xml
, styles.xml
, colors.xml
, dimens.xml
, attrs.xml
colors.xml and dimens.xml as a pallete
- For color, use names like gray_light, not button_foreground.
- For dimens, use names like spacing_large, not button_upper_padding.
- If you want to set something specific for your button color or padding, use a style file.