O
esboço é atualmente definido para ambos os componentes da interface gráfica
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
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
Aqui está como o arquivo de esboço deve ficar :
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.



