1 page.title=Viso geral da IU 2 @jd:body 3 4 5 <p>Todos os elementos da interface do usurio em um aplicativo para Android so criados usando objetos {@link android.view.View} e 6 {@link android.view.ViewGroup}. Uma {@link android.view.View} um objeto que desenha 7 algo na tela com o qual o usurio pode interagir. Um {@link android.view.ViewGroup} um 8 objeto que contm outros objetos {@link android.view.View} (e {@link android.view.ViewGroup}) para 9 definir o layout da interface.</p> 10 11 <p>O Android fornece uma coleo de subclasses {@link android.view.View} e {@link 12 android.view.ViewGroup} que oferecem controles de entrada comuns (como botes e campos de 13 texto) e vrios modelos de layout (como um layout linear ou relativo).</p> 14 15 16 <h2 id="Layout">Layout da interface do usurio</h2> 17 18 <p>A interface do usurio de cada componente do aplicativo definida usando uma hierarquia de objetos {@link 19 android.view.View} e {@link android.view.ViewGroup}, como mostra a figura 1. Cada grupo de vistas 20 um recipiente invisvel que organiza vistas de nvel inferior, enquanto que as vistas de nvel inferior podem ser 21 controles de entrada ou outros widgets 22 que desenham alguma parte da IU. Essa rvore hierrquica pode ser simples ou complexa, conforme necessrio 23 (mas a simplicidade melhor para desempenho).</p> 24 25 <img src="{@docRoot}images/viewgroup.png" alt="" /> 26 <p class="img-caption"><strong>Figura 1.</strong> Ilustrao de uma hierarquia de vistas, que define o layout 27 de uma IU.</p> 28 29 <p>Para declarar o layout, possvel instanciar objetos {@link android.view.View} no cdigo e comear a 30 criar uma rvore. Mas a forma mais fcil e efetiva de definir o layout com um arquivo XML. 31 O XML oferece uma estrutura legvel por humanos para o layout, similar a HTML.</p> 32 33 <p>O nome de um elemento XML para uma vista respectivo classe do Android que ele representa. Portanto, um elemento 34 <code><TextView></code> cria um widget {@link android.widget.TextView} na IU 35 e um elemento <code><LinearLayout></code> cria um grupo de vistas de {@link android.widget.LinearLayout} 36 . </p> 37 38 <p>Por exemplo, um layout vertical simples com uma vista de texto e um boto se parece com:</p> 39 <pre> 40 <?xml version="1.0" encoding="utf-8"?> 41 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 42 android:layout_width="fill_parent" 43 android:layout_height="fill_parent" 44 android:orientation="vertical" > 45 <TextView android:id="@+id/text" 46 android:layout_width="wrap_content" 47 android:layout_height="wrap_content" 48 android:text="I am a TextView" /> 49 <Button android:id="@+id/button" 50 android:layout_width="wrap_content" 51 android:layout_height="wrap_content" 52 android:text="I am a Button" /> 53 </LinearLayout> 54 </pre> 55 56 <p>Ao carregar um recurso de layout no aplicativo, o Android inicializa cada n do layout em um 57 objeto em tempo de execuo que pode ser usado para definir comportamentos adicionais, consultar o estado do objeto ou modificar o 58 layout.</p> 59 60 <p>Para obter um guia completo para criar um layout de IU, consulte <a href="declaring-layout.html">Layouts 61 XML</a>. 62 63 64 <h2 id="UIComponents">Componentes da interface do usurio</h2> 65 66 <p>Voc no precisa criar toda a IU usando objetos {@link android.view.View} e {@link 67 android.view.ViewGroup}. O Android fornece vrios componentes de aplicativo que oferecem 68 um layout de IU padro para os quais basta definir o contedo. Esses componentes de IU 69 tm um conjunto nico de APIs que so descritas nos respectivos documentos, como <a href="{@docRoot}guide/topics/ui/actionbar.html">Barra de ao</a>, <a href="{@docRoot}guide/topics/ui/dialogs.html">Caixas de dilogo</a> e <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Notificaes de status</a>.</p> 70 71 72