Using Resources

A resource is a localized text string, bitmap, or other small piece of noncode information that your program needs. At build time all your resources get compiled into your application. This is useful for internationalization and for supporting multiple device types (see Section 3.4, Using Alternate Resources, on page 55).

You will create and store your resources in the res directory inside your project. The Android resource compiler (aapt)6 processes resources according to which subfolder they are in and the format of the file. For example, PNG and JPG format bitmaps should go in a directory starting with res/drawable, and XML files that describe screen layouts should go in a directory starting with res/layout. You can add suffixes for particular languages, screen orientations, pixel densities, and more (see Section 13.5, All Screens Great and Small, on page 267).

The resource compiler compresses and packs your resources and then generates a class named R that contains identifiers you use to reference those resources in your program. This is a little different from standard Java resources, which are referenced by key strings. Doing it this way allows Android to make sure all your references are valid and saves space by not having to store all those resource keys. Eclipse uses a similar method to store and reference the resources in Eclipse plug-ins.

We'll see an example of the code to access a resource in Chapter 3, Designing the User Interface, on page 43.

0 0

Post a comment