Android – Adicionando ícones na ActionBar

actionbar

A ActionBar é uma característica da janela para identificar a aplicação e fornecer ações ao usuários e modos de navegação. Você deve usar a ActionBar  na maioria das atividades que precisam apresentar ações do usuário ou uma navegação global, pois fornece uma interface consistente entre os aplicativos e o sistema.

Abaixo vamos mostrar como inserir algumas informações na actionBar e icones de ações, assim como mostrado na imagem acima.

  • Adicionar titulo e subtitulo:
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        ActionBar actionBar = getActionBar();
        actionBar.setSubtitle("https://zarelli.wordpress.com");
        actionBar.setTitle("Exemplo - ActionBar");
    }
  • Para adicionar os icones devemos criar um xml de menu. Devemos criar uma pasta chamada menu/ dentro da pasta res/, nela, vamos adicionar o seguinte xml (menu_actionbar.xml):
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/action_anterior"
        android:orderInCategory="100"
        android:showAsAction="always"
        android:icon="@android:drawable/ic_media_rew"
        android:title="Anterior"/>
    <item
        android:id="@+id/action_proximo"
        android:orderInCategory="100"
        android:showAsAction="always"
        android:icon="@android:drawable/ic_media_ff"
        android:title="Proxímo"/>
</menu> 
  • Agora para adicionar o menu criado acima em nossa actionBar, devemos sobreescrever os seguintes métodos em nossa MainActivity:
    /**
     * Responsável em adicionar o menu a ActionBar
     *
     * @param menu
     * @return
     */
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu_actionbar, menu);
        return true;
    }

    /**
     * Responsável por definir as ações do menu
     *
     * @param item
     * @return
     */
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.action_proximo:
                Toast.makeText(this, "Menu Item 1 selected", Toast.LENGTH_SHORT)
                        .show();
                break;
            case R.id.action_anterior:
                Toast.makeText(this, "Menu item 2 selected", Toast.LENGTH_SHORT)
                        .show();
                break;
        }

        return true;
    }

Nossa ActionBar está pronta para ser utilizada, lembre-se de utilizar a API do android superior ou igual a 11 e utilizar um theme, no caso deste exemplo estou utilizando o android:theme=”@android:style/Theme.Holo.Light”

Link do projeto: (AQUI)
Mais sobre o assunto e Fonte: http://goo.gl/l5mQA

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s