mirror of
https://github.com/bitwarden/android.git
synced 2024-12-27 03:18:27 +03:00
44 lines
1.7 KiB
Text
44 lines
1.7 KiB
Text
|
Images, layout descriptions, binary blobs and string dictionaries can be included
|
||
|
in your application as resource files. Various Android APIs are designed to
|
||
|
operate on the resource IDs instead of dealing with images, strings or binary blobs
|
||
|
directly.
|
||
|
|
||
|
For example, a sample Android app that contains a user interface layout (main.axml),
|
||
|
an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png)
|
||
|
would keep its resources in the "Resources" directory of the application:
|
||
|
|
||
|
Resources/
|
||
|
drawable/
|
||
|
icon.png
|
||
|
|
||
|
layout/
|
||
|
main.axml
|
||
|
|
||
|
values/
|
||
|
strings.xml
|
||
|
|
||
|
In order to get the build system to recognize Android resources, set the build action to
|
||
|
"AndroidResource". The native Android APIs do not operate directly with filenames, but
|
||
|
instead operate on resource IDs. When you compile an Android application that uses resources,
|
||
|
the build system will package the resources for distribution and generate a class called "R"
|
||
|
(this is an Android convention) that contains the tokens for each one of the resources
|
||
|
included. For example, for the above Resources layout, this is what the R class would expose:
|
||
|
|
||
|
public class R {
|
||
|
public class drawable {
|
||
|
public const int icon = 0x123;
|
||
|
}
|
||
|
|
||
|
public class layout {
|
||
|
public const int main = 0x456;
|
||
|
}
|
||
|
|
||
|
public class strings {
|
||
|
public const int first_string = 0xabc;
|
||
|
public const int second_string = 0xbcd;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
You would then use R.drawable.icon to reference the drawable/icon.png file, or R.layout.main
|
||
|
to reference the layout/main.axml file, or R.strings.first_string to reference the first
|
||
|
string in the dictionary file values/strings.xml.
|