quinta-feira, 12 de abril de 2012

Trabalhando com Layout no Android




Muito bem pessoal, vamos ao nosso segundo post sobre Android. Mas antes quero esclarecer que meu objetivo aqui não é ensinar o passo a passo da programação, em meu primeiro post Android, Curso de Programação Android, disponibilizei links para algumas das várias vídeo-aulas do professor Neri, as aulas são excelentes, mostram todo o ambiente de programação no Eclipse e os primeiros passos para quem está começando a programar. Como ainda estou aprendendo, irei postar minhas experiências de aluno, dicas e matérias que utilizou em meus estudos.


Então vamos lá... Vamos entender um pouco mais sobre  LinearLayout, Wrap_Content e Fill_Parent. Entendendo como cada um funciona ficará mais fácil a organização dos objetos em nossas aplicações. Para exemplificar, temos em nossa aplicação uma tela com 3 TextViews e um ProgresBar. As 3 TextViews estão alindas a esquerda da tela e a ProgressBar centralizada. Todos os objetos estão em sentido vertical à tela.
 

O Maix.xml de nosso arquivo possui a seguinte estrutura:
 
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    
    android:orientation="vertical"            - > Define a orientação da tela como vertical                                                                                    
    android:layout_width="fill_parent"   -> Ocupa todo o espaço horizontal da tela
    android:layout_height="fill_parent"  -> Ocupa todo o espaço vertical da tela
    >


Aqui teremos 1 de nossas 3 TextViews, as demais seguem a mesma linha
 
<TextView
android:layout_width="fill_parent"   -> Ocupa todo o espaço horizontal1º LinearLayout
android:layout_height="wrap_content"  -> Ocupa apenas o espaço vertical  caixa de texto
android:text="Um pouco mais de Android"/> - >Texto exibido pela TextView

Aqui, mais uma LinarLayout onde ficará o objeto ProgressBar


<LinearLayout    -> 2º LinearLayout com a orientação definida como Horizontal

android:orientation="horizontal" 
android:layout_width="fill_parent"  -> Ocupa todo o espaço horizontal
android:layout_height="fill_parent" -> todo o espaço vertical
android:gravity="center"-> Neste caso o gravity="center" centraliza os componentes que estão dentro do LinearLayout 2
>

O ProgressBar

<ProgressBar  -> O ProgressBar está definido para ocupar todo o espaço da 2º LinearLayout
android:layout_height="fill_parent"   
android:layout_width="fill_parent"
style="?android:attr/progressBarStyleLarge"
android:id="@+id/progressBar1"
/>
</LinearLayout>
</LinearLayout>

Veja abaixo como como ficam as configuração Fill_Parent e Wrap_Content

Clique na imagem para ampliar
  • Definindo  a orientação de uma LinearLayout como Vertical os componentes serão adicionados um abaixo do outro, ocupando a tela verticalmente.
  • Definindo  a orientação de uma LinearLayout como Horizontal os componentes serão adicionados um ao lado do outro, ocupando a tela Horizontalmente.


Nenhum comentário: