terça-feira, 7 de dezembro de 2010

Alterando o icone da sua aplicação.

Olá pessoas.

Agora iremos fazer um breve post mostrando como é fácil alterar o ícone da sua aplicação e também como colocar um ícone na barra do nome da sua aplicação, deixando assim, uma aplicação mais personalizada.

Para isso, primeiro você deve localizar uma imagem que deseja usar como ícone. Dê preferência para alguma do tamanho 48x48, que é o padrão de um ícone para Android.
Caso queira usar a imagem que usamos no nosso exemplo, basta copiá-la daqui:




Para você configurar o ícone da sua aplicação, você precisa colocar este ícone nas pastas correspondentes a imagens da sua aplicação android. Elas são
  • res/drawable-hdpi
  • res/drawable-ldpi
  • res/drawable-mdpi
Asism que você colocar a imagem nas seguintes pastas, o arquivo R.java já irá tratar de criar um id para elas.

Agora vá até o arquivo AndroidManifest.xml e procure pela tag application. Nesta tag terá o atributo android:icon="", e é justamente ele que define qual será o icone da sua aplicação.
Provavelmente, este atributo está com o valor padrão, que é o @drawable/icon. Isso significa que ele está pegando o arquivo com Id (como é uma imagem, o seu nome é o Id) na pastas drawables. Sendo assim, basta você alterar o id da sua imagem, ou seja, o nome da sua imagem (caso não saiba, apague o texto deixando apenas @drawable/ e dê um Ctrl + Space, irá abrir as opções possíveis para você colocar neste atributo).

Pronto, se seguiu todos os passos, basta você rodar a sua aplicação e notar que o seu ícone está diferente, igual ao que você definiu.

A aplicação "Exemplo Icone" está com o ícone personalizado.

Agora que nossa aplicação tem uma "cara" (Este ícone é a nossa cara), vamos adicioná-la também na barra de títulos de nossa aplicação.
Para isso, basta deixar a classe java correspondente a tela, desta maneira, logo abaixo:


package com.exemploicone;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;

public class ExemploIcone extends Activity {
 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {

  // Habilita novos recursos na janela  
  requestWindowFeature(Window.FEATURE_LEFT_ICON);
  
  super.onCreate(savedInstanceState);
  
  setContentView(R.layout.main);
  
  // Adiciona um ícone a esquerda 
  setFeatureDrawableResource(Window.FEATURE_LEFT_ICON,
    R.drawable.droid_icon);

 }
}

Quando chamamos o método requestWindowFeature(Window.FEATURE_LEFT_ICON) estamos dizendo que nossa tela, terá alguns recursos adicionais e como parâmetro, estamos dizendo que este recurso será um ícone a esquerda.
Logo abaixo, quando fazemos setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, R.drawable.droid_icon) estamos adicionado o ícone que dizemos que deverá ficar ao lado esquerdo do título e como segundo parâmetro, passamos o ícone em si, mapeado pelo R.java.

Repare no ícone que aparece do lado do título da aplicação.
Agora existe um ícone ao lado do nome da nossa aplicação.

4 comentários:

  1. Olá.
    Estive a testar o app inventor e fiquei com uma imagem positiva sobre este software.

    Neste momento gostaria de fazer uma aplicação para mim e posteriormente, caso desse resultado talvez coloca-la no market.

    O que pretendo fazer é uma pequena aplicação que sempre que for iniciada faça uma sincronização com o meu site (www.refereetip.com) e caso existam novas noticias essas sejam passadas para o smartphone.

    Acham que é difícil fazer uma aplicação deste género.
    Existe uma aplicação deste género, podem ver neste link http://www.androlib.com/android.application.com-genwi-proreferee-wFDi.aspx
    De inicio não precisa de ser tão complexa, para já apenas queria sincronizar as noticias.

    Alguém me pode indicar um tutorial ou a dar umas dicas?

    Aguardo resposta.

    ResponderExcluir
  2. Fala Amigo,
    Você na verdade está buscando uma forma da aplicação consumir as notícias do seu site, como se fosse um leitor de FEED?
    Olhando rapidamente aqui, pensei que você poderia fazer uma interação usando JSON, onde a sua app android consumia este JSON, transformava o texto e um objeto, no caso, e utilizava da forma que quisesse.
    Se quiser, depois faço um post explicando como consumir JSON.
    Espero te ajudado.
    Abraços

    ResponderExcluir