+ curso de android xviii jornada de cursos. + 5. criando aplicações android (cont.)

Post on 21-Apr-2015

104 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

+

Curso de Android

XVIII Jornada de Cursos

+5. Criando aplicações Android (cont.)

+Aplicação de lista telefônica

Project Name: ListaTelefonica

Package Name : br.ufpe.cin.android.applista

Create Activity: AppLista

Application Name: Lista de contatos

Min SDK Version: 10

+Aplicação de lista telefônica

+Aplicação de lista telefônica

No arquivo main.xml, adicionaremos o elemento:

ListViewid: “@+id/lstcontatos”layout_width: “fill_parent”

+Aplicação de lista telefônica

AppLista.java

public void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);setContentView(R.layout.main);ArrayAdapter<String> adapter = new

ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, contatos);

lista = (ListView)findViewById(R.id.lstcontatos);

lista.setAdapter(adapter);

+Aplicação de lista telefônica

lista.setOnItemClickListener(newOnItemClickListener(){

public void onItemClick(AdapterView parent, View view, int position, long id) {

AlertDialog.Builder dialogo = new

AlertDialog.Builder(AppLista.this);dialogo.setTitle("Contato

selecionado");dialogo.setMessage(((TextView)

view).getText().toString());dialogo.setNeutralButton("OK",

null);dialogo.show();

}});

+Desafio!

Altere a aplicação para suportar as seguintes funções: Inserir um contato, exibindo um alerta confirmando a

operação; Remover um contato ao clicar no mesmo, exibindo

ainda um alerta confirmando a operação;

+Aplicação que visualiza imagens v1.0

Project Name: VisualizadorDeImagens

Package Name : br.ufpe.cin.android.appimagem

Create Activity Name: AppImagem

Application Name: Visualizador de Imagens

Min SDK Version: 10

+Aplicação que visualiza imagens

+Aplicação que visualiza imagens v1.0

Dentro de res/drawable-mdpi: coala.jpg; farol.jpg;

Adicionaremos também um LinearLayout do tipo Horizontal DENTRO do Layout padrão, que contém um objeto ImageView.

+Aplicação que visualiza imagens v1.0

Ao adicionar os elementos pelo Graphical Layout, altere as propriedades para ficarem como estão abaixo:

<LinearLayout android:id="@+id/linearLayout1" android:layout_width="match_parent" android:layout_height="wrap_content" >

<ImageView android:id="@+id/imagem" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/coala" />

</LinearLayout>

+Aplicação que visualiza imagens v1.0

No arquivo main.xml, adicionaremos os elementos em ordem:

TextViewid: “@+id/txtinfo”

text: “Foto 1” Button1id: “@+id/btimagem1”text: “Exibir foto 1”layout_width: “fill_parent”Button2id: “@+id/btimagem2”text: “Exibir foto 2”layout_width: “fill_parent”

+Aplicação que visualiza imagens v1.0

AppImage.javapublic void onCreate(Bundle savedInstanceState)

{super.onCreate(savedInstanceState);setContentView(R.layout.main);//Pega as referências de todos os componentes da

telaButton btfoto1 = (Button)

findViewById(R.id.btimagem1);Button btfoto2 = (Button)

findViewById(R.id.btimagem2);imagem = (ImageView)

findViewById(R.id.imagem);txt = (TextView)

findViewById(R.id.txtinfo);

+Aplicação que visualiza imagens v1.0

btfoto1.setOnClickListener(newView.OnClickListener(){

public void onClick(View arg0) {

imagem.setImageResource(R.drawable.coala);txt.setText("Foto 1");

}});btfoto2.setOnClickListener(new

View.OnClickListener(){public void onClick(View arg0) {

imagem.setImageResource(R.drawable.farol);txt.setText("Foto 2");

}});

}

+Melhorando!

Coloque mais 3 imagens na pasta res/drawable-mdpi;

Faça a seleção das mesmas através de um Spinner;

Dê a possibilidade do usuário editar o nome dessa imagem, que possui um valor default; Imagem 1, Imagem 2,...

+Aplicação que visualiza imagens v1.1

Project Name: GaleriaDeImagens

Package Name : br.ufpe.cin.android.appgallery

Create Activity: AppGallery

Application Name: Galeria de Imagens

Min SDK Version: 10

+Aplicação que visualiza imagens v1.1

+Aplicação que visualiza imagens v1.1

No arquivo main.xml, adicionaremos o elemento:

Para essa aplicação, criaremos uma classe auxiliar: ImageAdapter.

Galleryid: “@+id/gallery”layout_width: “fill_parent”

+Aplicação que visualiza imagens v1.1

ImageAdapter.javapackage br.ufpe.cin.android.appgallery; import android.content.Context;import android.view.*;import android.widget.*;public class ImageAdapter extends BaseAdapter {

private Context myContext;private int[] myImageIds = {

R.drawable.coala,R.drawable.farol,R.drawable.pinguins,

};public ImageAdapter(Context c) { this.myContext = c; }

+Aplicação que visualiza imagens v1.1

public int getCount() { return this.myImageIds.length; }public Object getItem(int position) { return position; }public long getItemId(int position) { return position; }

public View getView(int position, ViewconvertView, ViewGroup parent) {

ImageView i = new ImageView(this.myContext);i.setImageResource(this.myImageIds[position]);i.setScaleType(ImageView.ScaleType.FIT_XY);i.setLayoutParams(new Gallery.LayoutParams(150,

150));return i;

}

public float getScale(boolean focused, int offset) {return Math.max(0, 1.0f /

(float)Math.pow(2, Math.abs(offset)));

}}

+Aplicação que visualiza imagens v1.0

AppGallery.javapublic void onCreate(Bundle

savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);((Gallery)

findViewById(R.id.gallery)).setAdapter(new

ImageAdapter(this));}

+Melhorando!

Coloque, na aplicação, outra galeria, e implemente dois botões que trocam as imagens de galeria

top related