sexta-feira, 16 de março de 2012

Desenvolvendo uma aplicação que visualiza imagens


Agora vamos desenvolver mais uma aplicação. Essa aplicação permite
que você visualize images, tudo através do widget ImageView. A sua estrutura

você confere abaixo:
<ImageView id="@+id/imagem"
android:src="@drawable/foto1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

Agora crie um novo projeto conforme os dados abaixo:

Project Name: ProjetoImagem

Package Name : com.android.appimage

Activity Name: AppImage

Application Name: Visualizando Imagens

Antes de codificar, quero que você coloque duas imagens JPEG (com a
extensão .jpg) dentro da pasta
foto1.jpg e o outro foto2.jpg. Para importar um arquivo, clique com o botão
direito do mouse e selecione “Import”, depois selecione File System. Clique no
botão browser para selecionar o diretório onde se encontram as imagens,
depois de selecionado, marque os dois arquivos (imagens) para que eles sejam
importados para a pasta

Depois disso, é só clicar em “Finish”.

Agora no arquivo main.xml, coloque o código abaixo:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<ImageView android:id="@+id/imagem"
android:src="@drawable/foto1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Imagem: Foto 1"
android:id="@+label/label"
/>
</LinearLayout>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Exibir Foto 1"
android:id="@+botao/bt1"
/>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Exibir Foto 2"
android:id="@+botao/bt2"
/>
</LinearLayout>

Vamos analisar o atributo android:src da widget ImageView. Esse atributo
permite especificar a imagem a ser aberta, no caso, será exibida a imagem
“foto1.jpg” através do seguinto valor: @drawable/foto1. “@drawable “
corresponde a pasta onde se encontra a imagem e “foto1” é o nome da imagem,
que deve ser informada sem a sua extensão. Logo se eu ver de inicio a segunda
imagem, usaria o seguinte valor: @drawable/foto2.

Agora no arquivo AppImage.java coloque o código abaixo:

package
com.android.appimage;
import
android.app.Activity;
import
android.os.Bundle;
import
android.view.*;
import
android.widget.*;
public class
AppImage extends Activity {
/** Called when the activity is first created. */
ImageView
TextView
imagem;txt;
@Override
public void
onCreate(Bundle icicle) {
super
setContentView(R.layout.
Button btfoto1 = (Button) findViewById(R.botao.
Button btfoto2 = (Button) findViewById(R.botao.
.onCreate(icicle);main);bt1);bt2);
imagem
= (ImageView) findViewById(R.id.imagem);
txt
btfoto1.setOnClickListener(
= (TextView) findViewById(R.label.label);new View.OnClickListener(){
public void
onClick(View arg0) {
imagem
.setImageResource(R.drawable.foto1);
txt
}
});
btfoto2.setOnClickListener(
new View.OnClickListener(){
public void
onClick(View arg0) {
imagem
.setImageResource(R.drawable.foto2);
txt
}
});
}
}

Agora vamos analisar alguns trechos de códigos. Vamos no evento Click
referente a abertura da primeira imagem. O código:

imagem
.setImageResource(R.drawable.foto1);

É responsável por abrir a imagem “foto1.jpg” e exibi-la no componente.

Observe que foi passado o parâmetro

“R.drawable.foto1” onde “drawable”foto1” corresponde ao arquivo “foto1.jpg”. Logo após

txt
.setText("Imagem: Foto 1");

Cuja finalidade é mudar o título da TextView , de acordo com a
String
passada como parâmetro.

O comentário acima é o mesmo para o segundo botão referente a abertura
da segunda imagem.

Vamos executar a nossa aplicação.

corresponde a pasta e “
vem o código:
 

Desenvolvendo uma aplicação que visualiza imagens

Nenhum comentário:

Postar um comentário