terça-feira, 23 de abril de 2013

Primeiros passos - 4ª parte, Ajustando o resultado final.


O esboço é atualmente definido para ambos os componentes da interface gráfica EditText e Button que são tão grandes quanto à necessidade de encaixar seu conteúdo, como mostrado a seguir.
 Isto funciona bem para o botão, mas não tão bem para o campo texto, afinal o usuário pode digitar algo maior. Então, seria ideal preencher a largura de tela não utilizada com o campo texto. Você pode fazer isto dento do  LinearLayout com a propriedade tamanho, que você pode especificar com o atributo android:layout_weight.
O valor tamanho é o numero que especifica a quantidade de espaço restante que cada área de visão irá consumir, relativo à quantidade consumida pelas visualizações derivadas. Isto funciona como a quantidade de ingredientes na receita de bebida: “2 partes de vodka, 1 parte de licor de café”. Por exemplo se você der o peso de 2 para um e o peso de para outro, a soma será 3, assim a primeira área de visão ocupa 2/3 do espaço restante o a segunda preenche o resto.  Se você adicionar uma terceira área de visão e der o peso de 1, a primeira área de visão (com peso 2) agora pega 1/ 2 dos espaços, enquanto o restante ocupa 1/4 cada um.
O Tamanho padrão para todas as visualizações é 0, então se especificar qualquer peso, então se você especificar qualquer valor de tamanho maior que 0 para apenas uma visão, então esta área de visão irá ocupar todo o espaço restante. Então para preencher o espaço restante do seu esboço com o elemento EditText, de o tamanho de 1 e deixe o botão sem tamanho.
    <EditText

        android:layout_weight="1"

        ... />
Em ordem para melhorar a eficiência do seu esboço quando você especificar o tamanho, você deve mudar a largura do seu EditText para zero (0dp). Definindo a largura com zero melhora a desempenho do esboço devido ao uso de "wrap_content" uma vez que a largura utiliza o sistema para calcular uma largura que em si é irrelevante devido ao valor do tamanho requerido por outro calculo de largura para preencher o espaço remanescente.
    <EditText

        android:layout_weight="1"

        android:layout_width="0dp"

        ... />
Abaixo  mostra o resultado de assinalar todo o tamanho para o elemento  EditText.


Aqui está como o arquivo de esboço deve ficar :
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="horizontal">

    <EditText android:id="@+id/edit_message"

        android:layout_weight="1"

        android:layout_width="0dp"

        android:layout_height="wrap_content"

        android:hint="@string/edit_message" />

    <Button

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="@string/button_send" />

</LinearLayout>

Este esboço é aplicado por padrão pela classe Activity que a ferramenta do SDK gera quando você cria o projeto, assim você pode rodar o aplicativo e ver o resultado:
·         No Eclipse, clique em Run  na barra de ferramentas.

Continue para a próxima postagem para aprender como você pode responder ao pressionamento de um botão, ler o conteúdo do texto e iniciar outra atividade.

Nenhum comentário:

Postar um comentário