1page.title=More Resource Types 2parent.title=Resource Types 3parent.link=available-resources.html 4@jd:body 5 6<p>This page defines more types of resources you can externalize, including:</p> 7 8<dl> 9 <dt><a href="#Bool">Bool</a></dt> 10 <dd>XML resource that carries a boolean value.</dd> 11 <dt><a href="#Color">Color</a></dt> 12 <dd>XML resource that carries a color value (a hexadecimal color).</dd> 13 <dt><a href="#Dimension">Dimension</a></dt> 14 <dd>XML resource that carries a dimension value (with a unit of measure).</dd> 15 <dt><a href="#Id">ID</a></dt> 16 <dd>XML resource that provides a unique identifier for application resources and 17components.</dd> 18 <dt><a href="#Integer">Integer</a></dt> 19 <dd>XML resource that carries an integer value.</dd> 20 <dt><a href="#IntegerArray">Integer Array</a></dt> 21 <dd>XML resource that provides an array of integers.</dd> 22 <dt><a href="#TypedArray">Typed Array</a></dt> 23 <dd>XML resource that provides a {@link android.content.res.TypedArray} (which you can use 24for an array of drawables).</dd> 25</dl> 26 27 28 29 30<h2 id="Bool">Bool</h2> 31 32<p>A boolean value defined in XML.</p> 33 34<p class="note"><strong>Note:</strong> A bool is a simple resource that is referenced 35using the value provided in the {@code name} attribute (not the name of the XML file). As 36such, you can combine bool resources with other simple resources in the one XML file, 37under one {@code <resources>} element.</p> 38 39<dl class="xml"> 40 41<dt>file location:</dt> 42<dd><code>res/values/<em>filename</em>.xml</code><br/> 43The filename is arbitrary. The {@code <bool>} element's {@code name} will be used as the resource 44ID.</dd> 45 46<dt>resource reference:</dt> 47<dd> 48In Java: <code>R.bool.<em>bool_name</em></code><br/> 49In XML: <code>@[<em>package</em>:]bool/<em>bool_name</em></code> 50</dd> 51 52<dt>syntax:</dt> 53<dd> 54<pre class="stx"> 55<?xml version="1.0" encoding="utf-8"?> 56<<a href="#bool-resources-element">resources</a>> 57 <<a href="#bool-element">bool</a> 58 name="<em>bool_name</em>" 59 >[true | false]</bool> 60</resources> 61</pre> 62</dd> 63 64<dt>elements:</dt> 65<dd> 66<dl class="tag-list"> 67 68 <dt id="bool-resources-element"><code><resources></code></dt> 69 <dd><strong>Required.</strong> This must be the root node. 70 <p>No attributes.</p> 71 </dd> 72 <dt id="bool-element"><code><bool></code></dt> 73 <dd>A boolean value: {@code true} or {@code false}. 74 <p class="caps">attributes:</p> 75 <dl class="atn-list"> 76 <dt><code>name</code></dt> 77 <dd><em>String</em>. A name for the bool value. This will be used as the resource ID.</dd> 78 </dl> 79 </dd> 80 81</dl> 82</dd> <!-- end elements and attributes --> 83 84<dt>example:</dt> 85<dd>XML file saved at <code>res/values-small/bools.xml</code>: 86<pre> 87<?xml version="1.0" encoding="utf-8"?> 88<resources> 89 <bool name="screen_small">true</bool> 90 <bool name="adjust_view_bounds">true</bool> 91</resources> 92</pre> 93 94 <p>This application code retrieves the boolean:</p> 95<pre> 96Resources res = {@link android.content.Context#getResources()}; 97boolean screenIsSmall = res.{@link android.content.res.Resources#getBoolean(int) getBoolean}(R.bool.screen_small); 98</pre> 99 <p>This layout XML uses the boolean for an attribute:</p> 100<pre> 101<ImageView 102 android:layout_height="fill_parent" 103 android:layout_width="fill_parent" 104 android:src="@drawable/logo" 105 android:adjustViewBounds="@bool/adjust_view_bounds" /> 106</pre> 107</dd> <!-- end example --> 108 109</dl> 110 111 112 113 114<h2 id="Color">Color</h2> 115 116<p>A color value defined in XML. 117The color is specified with an RGB value and alpha channel. You can use a color resource 118any place that accepts a hexadecimal color value. You can also use a color resource when a 119drawable resource is expected in XML (for example, {@code android:drawable="@color/green"}).</p> 120 121<p>The value always begins with a pound (#) character and then followed by the 122Alpha-Red-Green-Blue information in one of the following formats:</p> 123<ul> 124 <li>#<em>RGB</em></li> 125 <li>#<em>ARGB</em></li> 126 <li>#<em>RRGGBB</em></li> 127 <li>#<em>AARRGGBB</em></li> 128</ul> 129 130<p class="note"><strong>Note:</strong> A color is a simple resource that is referenced 131using the value provided in the {@code name} attribute (not the name of the XML file). As 132such, you can combine color resources with other simple resources in the one XML file, 133under one {@code <resources>} element.</p> 134 135<dl class="xml"> 136 137<dt>file location:</dt> 138<dd><code>res/values/colors.xml</code><br/> 139The filename is arbitrary. The {@code <color>} element's {@code name} will be used as the 140resource ID.</dd> 141 142<dt>resource reference:</dt> 143<dd> 144In Java: <code>R.color.<em>color_name</em></code><br/> 145In XML: <code>@[<em>package</em>:]color/<em>color_name</em></code> 146</dd> 147 148<dt>syntax:</dt> 149<dd> 150<pre class="stx"> 151<?xml version="1.0" encoding="utf-8"?> 152<<a href="#color-resources-element">resources</a>> 153 <<a href="#color-element">color</a> 154 name="<em>color_name</em>" 155 ><em>hex_color</em></color> 156</resources> 157</pre> 158</dd> 159 160<dt>elements:</dt> 161<dd> 162<dl class="tag-list"> 163 164 <dt id="color-resources-element"><code><resources></code></dt> 165 <dd><strong>Required.</strong> This must be the root node. 166 <p>No attributes.</p> 167 </dd> 168 <dt id="color-element"><code><color></code></dt> 169 <dd>A color expressed in hexadecimal, as described above. 170 <p class="caps">attributes:</p> 171 <dl class="atn-list"> 172 <dt><code>name</code></dt> 173 <dd><em>String</em>. A name for the color. This will be used as the resource ID. 174 </dd> 175 </dl> 176 </dd> 177 178</dl> 179</dd> <!-- end elements and attributes --> 180 181<dt>example:</dt> 182<dd>XML file saved at <code>res/values/colors.xml</code>: 183<pre> 184<?xml version="1.0" encoding="utf-8"?> 185<resources> 186 <color name="opaque_red">#f00</color> 187 <color name="translucent_red">#80ff0000</color> 188</resources> 189</pre> 190 191 <p>This application code retrieves the color resource:</p> 192<pre> 193Resources res = {@link android.content.Context#getResources()}; 194int color = res.{@link android.content.res.Resources#getColor(int) getColor}(R.color.opaque_red); 195</pre> 196 <p>This layout XML applies the color to an attribute:</p> 197<pre> 198<TextView 199 android:layout_width="fill_parent" 200 android:layout_height="wrap_content" 201 android:textColor="@color/translucent_red" 202 android:text="Hello"/> 203</pre> 204</dd> <!-- end example --> 205 206</dl> 207 208 209 210 211 212<h2 id="Dimension">Dimension</h2> 213 214<p>A dimension value defined in XML. A dimension 215is specified with a number followed by a unit of measure. 216For example: 10px, 2in, 5sp. The following units of measure are supported by Android:</p> 217<dl> 218 <dt>{@code dp}</dt> 219 <dd>Density-independent Pixels - An abstract unit that is based on the physical density of the 220screen. These units are relative to a 160 dpi (dots per inch) screen, on which 1dp is roughly equal 221to 1px. When running on a higher density screen, the number of pixels used to draw 1dp is scaled up 222by a factor appropriate for the screen's dpi. Likewise, when on a lower density screen, the number 223of pixels used for 1dp is scaled down. The ratio of dp-to-pixel will change with the screen density, 224but not necessarily in direct proportion. Using dp units (instead of px units) is a simple solution 225to making the view dimensions in your layout resize properly for different screen densities. In 226other words, it provides consistency for the real-world sizes of your UI elements across different 227devices.</dd> 228 <dt>{@code sp}</dt> 229 <dd>Scale-independent Pixels - This is like the dp unit, but it is also scaled by the user's font 230 size preference. It is recommend you use this unit when specifying font sizes, so they will be adjusted 231 for both the screen density and the user's preference.</dd> 232 <dt>{@code pt}</dt> 233 <dd>Points - 1/72 of an inch based on the physical size of the screen.</dd> 234 <dt>{@code px}</dt> 235 <dd>Pixels - Corresponds to actual pixels on the screen. This unit of measure is not recommended because 236 the actual representation can vary across devices; each devices may have a different number of pixels 237 per inch and may have more or fewer total pixels available on the screen.</dd> 238 <dt>{@code mm}</dt> 239 <dd>Millimeters - Based on the physical size of the screen.</dd> 240 <dt>{@code in}</dt> 241 <dd>Inches - Based on the physical size of the screen.</dd> 242</dl> 243 244<p class="note"><strong>Note:</strong> A dimension is a simple resource that is referenced 245using the value provided in the {@code name} attribute (not the name of the XML file). As 246such, you can combine dimension resources with other simple resources in the one XML file, 247under one {@code <resources>} element.</p> 248 249<dl class="xml"> 250 251<dt>file location:</dt> 252<dd><code>res/values/<em>filename</em>.xml</code><br/> 253The filename is arbitrary. The {@code <dimen>} element's {@code name} will be used as the 254resource ID.</dd> 255 256<dt>resource reference:</dt> 257<dd> 258In Java: <code>R.dimen.<em>dimension_name</em></code><br/> 259In XML: <code>@[<em>package</em>:]dimen/<em>dimension_name</em></code> 260</dd> 261 262<dt>syntax:</dt> 263<dd> 264<pre class="stx"> 265<?xml version="1.0" encoding="utf-8"?> 266<<a href="#dimen-resources-element">resources</a>> 267 <<a href="#dimen-element">dimen</a> 268 name="<em>dimension_name</em>" 269 ><em>dimension</em></dimen> 270</resources> 271</pre> 272</dd> 273 274<dt>elements:</dt> 275<dd> 276<dl class="tag-list"> 277 278 <dt id="dimen-resources-element"><code><resources></code></dt> 279 <dd><strong>Required.</strong> This must be the root node. 280 <p>No attributes.</p> 281 </dd> 282 <dt id="dimen-element"><code><dimen></code></dt> 283 <dd>A dimension, represented by a float, followed by a unit of measurement (dp, sp, pt, px, mm, in), 284 as described above. 285 <p class="caps">attributes:</p> 286 <dl class="atn-list"> 287 <dt><code>name</code></dt> 288 <dd><em>String</em>. A name for the dimension. This will be used as the resource ID. 289 </dd> 290 </dl> 291 </dd> 292 293</dl> 294</dd> <!-- end elements and attributes --> 295 296<dt>example:</dt> 297<dd>XML file saved at <code>res/values/dimens.xml</code>: 298<pre> 299<?xml version="1.0" encoding="utf-8"?> 300<resources> 301 <dimen name="textview_height">25dp</dimen> 302 <dimen name="textview_width">150dp</dimen> 303 <dimen name="ball_radius">30dp</dimen> 304 <dimen name="font_size">16sp</dimen> 305</resources> 306</pre> 307 308 <p>This application code retrieves a dimension:</p> 309<pre> 310Resources res = {@link android.content.Context#getResources()}; 311float fontSize = res.{@link android.content.res.Resources#getDimension(int) getDimension}(R.dimen.font_size); 312</pre> 313 <p>This layout XML applies dimensions to attributes:</p> 314<pre> 315<TextView 316 android:layout_height="@dimen/textview_height" 317 android:layout_width="@dimen/textview_width" 318 android:textSize="@dimen/font_size"/> 319</pre> 320 </dl> 321</dd> <!-- end example --> 322 323</dl> 324 325 326 327 328 329 330<h2 id="Id">ID</h2> 331 332<p>A unique resource ID defined in XML. Using the name you provide in the {@code <item>} 333element, the Android developer tools create a unique integer in your project's {@code 334R.java} class, which you can use as an 335identifier for an application resources (for example, a {@link android.view.View} in your UI layout) 336or a unique integer for use in your application code (for example, as an ID for a dialog or a 337result code).</p> 338 339<p class="note"><strong>Note:</strong> An ID is a simple resource that is referenced 340using the value provided in the {@code name} attribute (not the name of the XML file). As 341such, you can combine ID resources with other simple resources in the one XML file, 342under one {@code <resources>} element. Also, remember that an ID resources does not reference 343an actual resource item; it is simply a unique ID that you can attach to other resources or use 344as a unique integer in your application.</p> 345 346<dl class="xml"> 347 348<dt>file location:</dt> 349<dd><code>res/values/<em>filename.xml</em></code><br/> 350The filename is arbitrary.</dd> 351 352<dt>resource reference:</dt> 353<dd> 354In Java: <code>R.id.<em>name</em></code><br/> 355In XML: <code>@[<em>package</em>:]id/<em>name</em></code> 356</dd> 357 358<dt>syntax:</dt> 359<dd> 360<pre class="stx"> 361<?xml version="1.0" encoding="utf-8"?> 362<<a href="#id-resources-element">resources</a>> 363 <<a href="#id-item-element">item</a> 364 type="id" 365 name="<em>id_name</em>" /> 366</resources> 367</pre> 368</dd> 369 370<dt>elements:</dt> 371<dd> 372<dl class="tag-list"> 373 374 <dt id="id-resources-element"><code><resources></code></dt> 375 <dd><strong>Required.</strong> This must be the root node. 376 <p>No attributes.</p> 377 </dd> 378 <dt id="id-item-element"><code><item></code></dt> 379 <dd>Defines a unique ID. Takes no value, only attributes. 380 <p class="caps">attributes:</p> 381 <dl class="atn-list"> 382 <dt><code>type</code></dt> 383 <dd>Must be "id".</dd> 384 <dt><code>name</code></dt> 385 <dd><em>String</em>. A unique name for the ID.</dd> 386 </dl> 387 </dd> 388 389</dl> 390</dd> <!-- end elements and attributes --> 391 392<dt>example:</dt> 393<dd> 394 <p>XML file saved at <code>res/values/ids.xml</code>:</p> 395<pre> 396<?xml version="1.0" encoding="utf-8"?> 397<resources> 398 <item type="id" name="button_ok" /> 399 <item type="id" name="dialog_exit" /> 400</resources> 401</pre> 402 403 <p>Then, this layout snippet uses the "button_ok" ID for a Button widget:</p> 404<pre> 405<Button android:id="<b>@id/button_ok</b>" 406 style="@style/button_style" /> 407</pre> 408 409 <p>Notice that the {@code android:id} value does not include the plus sign in the ID reference, 410because the ID already exists, as defined in the {@code ids.xml} example above. (When you specify an 411ID to an XML resource using the plus sign—in the format {@code 412android:id="@+id/name"}—it means that the "name" ID does not exist and should be created.)</p> 413 414 <p>As another example, the following code snippet uses the "dialog_exit" ID as a unique identifier 415for a dialog:</p> 416<pre> 417{@link android.app.Activity#showDialog(int) showDialog}(<b>R.id.dialog_exit</b>); 418</pre> 419 <p>In the same application, the "dialog_exit" ID is compared when creating a dialog:</p> 420<pre> 421protected Dialog {@link android.app.Activity#onCreateDialog(int)}(int id) { 422 Dialog dialog; 423 switch(id) { 424 case <b>R.id.dialog_exit</b>: 425 ... 426 break; 427 default: 428 dialog = null; 429 } 430 return dialog; 431} 432</pre> 433</dd> <!-- end example --> 434 435 436</dl> 437 438 439 440 441 442<h2 id="Integer">Integer</h2> 443 444<p>An integer defined in XML.</p> 445 446<p class="note"><strong>Note:</strong> An integer is a simple resource that is referenced 447using the value provided in the {@code name} attribute (not the name of the XML file). As 448such, you can combine integer resources with other simple resources in the one XML file, 449under one {@code <resources>} element.</p> 450 451<dl class="xml"> 452 453<dt>file location:</dt> 454<dd><code>res/values/<em>filename.xml</em></code><br/> 455The filename is arbitrary. The {@code <integer>} element's {@code name} will be used as the 456resource ID.</dd> 457 458<dt>resource reference:</dt> 459<dd> 460In Java: <code>R.integer.<em>integer_name</em></code><br/> 461In XML: <code>@[<em>package</em>:]integer/<em>integer_name</em></code> 462</dd> 463 464<dt>syntax:</dt> 465<dd> 466<pre class="stx"> 467<?xml version="1.0" encoding="utf-8"?> 468<<a href="#integer-resources-element">resources</a>> 469 <<a href="#integer-element">integer</a> 470 name="<em>integer_name</em>" 471 ><em>integer</em></integer> 472</resources> 473</pre> 474</dd> 475 476<dt>elements:</dt> 477<dd> 478<dl class="tag-list"> 479 480 <dt id="integer-resources-element"><code><resources></code></dt> 481 <dd><strong>Required.</strong> This must be the root node. 482 <p>No attributes.</p> 483 </dd> 484 <dt id="integer-element"><code><integer></code></dt> 485 <dd>An integer. 486 <p class="caps">attributes:</p> 487 <dl class="atn-list"> 488 <dt><code>name</code></dt> 489 <dd><em>String</em>. A name for the integer. This will be used as the resource ID. 490 </dd> 491 </dl> 492 </dd> 493 494</dl> 495</dd> <!-- end elements and attributes --> 496 497<dt>example:</dt> 498<dd> 499 <p>XML file saved at <code>res/values/integers.xml</code>:</p> 500<pre> 501<?xml version="1.0" encoding="utf-8"?> 502<resources> 503 <integer name="max_speed">75</integer> 504 <integer name="min_speed">5</integer> 505</resources> 506</pre> 507 <p>This application code retrieves an integer:</p> 508<pre> 509Resources res = {@link android.content.Context#getResources()}; 510int maxSpeed = res.{@link android.content.res.Resources#getInteger(int) getInteger}(R.integer.max_speed); 511</pre> 512</dd> <!-- end example --> 513 514 515</dl> 516 517 518 519 520 521<h2 id="IntegerArray">Integer Array</h2> 522 523<p>An array of integers defined in XML.</p> 524 525<p class="note"><strong>Note:</strong> An integer array is a simple resource that is referenced 526using the value provided in the {@code name} attribute (not the name of the XML file). As 527such, you can combine integer array resources with other simple resources in the one XML file, 528under one {@code <resources>} element.</p> 529 530 531<dl class="xml"> 532 533<dt>file location:</dt> 534<dd><code>res/values/<em>filename</em>.xml</code><br/> 535The filename is arbitrary. The {@code <integer-array>} element's {@code name} will be used as the 536resource ID.</dd> 537 538<dt>compiled resource datatype:</dt> 539<dd>Resource pointer to an array of integers.</dd> 540 541<dt>resource reference:</dt> 542<dd> 543In Java: <code>R.array.<em>integer_array_name</em></code><br/> 544In XML: <code>@[<em>package</em>:]array.<em>integer_array_name</em></code> 545</dd> 546 547<dt>syntax:</dt> 548<dd> 549<pre class="stx"> 550<?xml version="1.0" encoding="utf-8"?> 551<<a href="#integer-array-resources-element">resources</a>> 552 <<a href="#integer-array-element">integer-array</a> 553 name="<em>integer_array_name</em>"> 554 <<a href="#integer-array-item-element">item</a> 555 ><em>integer</em></item> 556 </integer-array> 557</resources> 558</pre> 559</dd> 560 561<dt>elements:</dt> 562<dd> 563<dl class="tag-list"> 564 <dt id="integer-array-resources-element"><code><resources></code></dt> 565 <dd><strong>Required.</strong> This must be the root node. 566 <p>No attributes.</p> 567 </dd> 568 <dt id="integer-array-element"><code><integer-array></code></dt> 569 <dd>Defines an array of integers. Contains one or more child {@code <item>} elements. 570 <p class="caps">attributes:</p> 571 <dl class="atn-list"> 572 <dt><code>android:name</code></dt> 573 <dd><em>String</em>. A name for the array. This name will be used as the resource 574ID to reference the array.</dd> 575 </dl> 576 </dd> 577 <dt id="integer-array-item-element"><code><item></code></dt> 578 <dd>An integer. The value can be a reference to another 579integer resource. Must be a child of a {@code <integer-array>} element. 580 <p>No attributes.</p> 581 </dd> 582</dl> 583</dd> <!-- end elements --> 584 585<dt>example:</dt> 586<dd>XML file saved at <code>res/values/integers.xml</code>: 587<pre> 588<?xml version="1.0" encoding="utf-8"?> 589<resources> 590 <integer-array name="bits"> 591 <item>4</item> 592 <item>8</item> 593 <item>16</item> 594 <item>32</item> 595 </integer-array> 596</resources> 597</pre> 598 599 <p>This application code retrieves the integer array:</p> 600<pre> 601Resources res = {@link android.content.Context#getResources()}; 602int[] bits = res.{@link android.content.res.Resources#getIntArray(int) getIntArray}(R.array.bits); 603</pre> 604</dd> <!-- end example --> 605 606</dl> 607 608 609 610 611 612<h2 id="TypedArray">Typed Array</h2> 613 614<p>A {@link android.content.res.TypedArray} defined in XML. You can use 615this to create an array of other resources, such as drawables. Note that the array 616is not required to be homogeneous, so you can create an array of mixed resource types, but 617you must be aware of what and where the data types are in the array so that you can properly obtain 618each item with the {@link android.content.res.TypedArray}'s {@code get...()} methods.</p> 619 620<p class="note"><strong>Note:</strong> A typed array is a simple resource that is referenced 621using the value provided in the {@code name} attribute (not the name of the XML file). As 622such, you can combine typed array resources with other simple resources in the one XML file, 623under one {@code <resources>} element.</p> 624 625 626<dl class="xml"> 627 628<dt>file location:</dt> 629<dd><code>res/values/<em>filename</em>.xml</code><br/> 630The filename is arbitrary. The {@code <array>} element's {@code name} will be used as the 631resource ID.</dd> 632 633<dt>compiled resource datatype:</dt> 634<dd>Resource pointer to a {@link android.content.res.TypedArray}.</dd> 635 636<dt>resource reference:</dt> 637<dd> 638In Java: <code>R.array.<em>array_name</em></code><br/> 639In XML: <code>@[<em>package</em>:]array.<em>array_name</em></code> 640</dd> 641 642<dt>syntax:</dt> 643<dd> 644<pre class="stx"> 645<?xml version="1.0" encoding="utf-8"?> 646<<a href="#array-resources-element">resources</a>> 647 <<a href="#array-element">array</a> 648 name="<em>integer_array_name</em>"> 649 <<a href="#array-item-element">item</a>><em>resource</em></item> 650 </array> 651</resources> 652</pre> 653</dd> 654 655<dt>elements:</dt> 656<dd> 657<dl class="tag-list"> 658 <dt id="array-resources-element"><code><resources></code></dt> 659 <dd><strong>Required.</strong> This must be the root node. 660 <p>No attributes.</p> 661 </dd> 662 <dt id="array-element"><code><array></code></dt> 663 <dd>Defines an array. Contains one or more child {@code <item>} elements. 664 <p class="caps">attributes:</p> 665 <dl class="atn-list"> 666 <dt><code>android:name</code></dt> 667 <dd><em>String</em>. A name for the array. This name will be used as the resource 668ID to reference the array.</dd> 669 </dl> 670 </dd> 671 <dt id="array-item-element"><code><item></code></dt> 672 <dd>A generic resource. The value can be a reference to a resource or a simple data type. 673Must be a child of an {@code <array>} element. 674 <p>No attributes.</p> 675 </dd> 676</dl> 677</dd> <!-- end elements --> 678 679<dt>example:</dt> 680<dd>XML file saved at <code>res/values/arrays.xml</code>: 681<pre> 682<?xml version="1.0" encoding="utf-8"?> 683<resources> 684 <array name="icons"> 685 <item>@drawable/home</item> 686 <item>@drawable/settings</item> 687 <item>@drawable/logout</item> 688 </array> 689 <array name="colors"> 690 <item>#FFFF0000</item> 691 <item>#FF00FF00</item> 692 <item>#FF0000FF</item> 693 </array> 694</resources> 695</pre> 696 697 <p>This application code retrieves each array and then obtains the first entry in each array:</p> 698<pre> 699Resources res = {@link android.content.Context#getResources()}; 700TypedArray icons = res.{@link android.content.res.Resources#obtainTypedArray(int) obtainTypedArray}(R.array.icons); 701Drawable drawable = icons.{@link android.content.res.TypedArray#getDrawable(int) getDrawable}(0); 702 703TypedArray colors = res.{@link android.content.res.Resources#obtainTypedArray(int) obtainTypedArray}(R.array.colors); 704int color = colors.{@link android.content.res.TypedArray#getColor(int,int) getColor}(0,0); 705</pre> 706</dd> <!-- end example --> 707 708</dl> 709 710 711 712 713 714 715 716 717 718 719<!-- TODO 720 721 722<h2>Styleable Attribute</h2> 723 724 725<dl class="xml"> 726 727<dt>syntax:</dt> 728<dd> 729<pre class="stx"> 730</pre> 731</dd> 732 733<dt>file location:</dt> 734<dd><code>res/</code></dd> 735 736<dt>compiled resource datatype:</dt> 737<dd>Resource pointer to a {@link android.view.Menu} (or subclass) resource.</dd> 738 739<dt>resource reference:</dt> 740<dd>Java: <code>R.</code><br/> 741 XML: 742</dd> 743 744<dt>elements and attributes:</dt> 745<dd> 746<dl class="attr"> 747 748 <dt><code></code></dt> 749 <dd></dd> 750 <dt><code></code></dt> 751 <dd>Valid attributes: 752 <dl> 753 <dt><code></code></dt> 754 <dd> 755 </dd> 756 <dt><code></code></dt> 757 <dd> 758 </dd> 759 </dl> 760 </dd> 761 762</dl> 763</dd> 764 765<dt>example:</dt> 766<dd> 767 <dl> 768 769 <dt>XML file saved at <code>res/</code>:</dt> 770 <dd> 771<pre> 772 773</pre> 774 </dd> 775 776 <dt>Java code :</dt> 777 <dd> 778<pre> 779 780</pre> 781 </dd> 782 783 </dl> 784</dd> 785 786 787<dt>see also:</dt> 788<dd> 789<ul> 790 <li></li> 791</ul> 792</dd> 793 794</dl> 795 796 797 798 799 800 801--> 802 803 804 805 806