o tema Holo Light:res/drawable-mdpires/drawable-hdpires/drawable-xhdpiPara comecar salve os icones nas respectivas pastas de acordo com as legendas nas imagens. Agora vamos precisar de dois arquivos xml, um para o item de menu e outro para a progressbar. Para o item, dentro da pasta res/menu, crie um arquivo chamado atualizar.xml com o seguinte conteudo:<menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/action_atualizar" android:icon="@drawable/ic_menu_refresh" android:showAsAction="always" android:title="Atualizar"/></menu>E na pasta res/layout o arquivo actionbar_atualizar.xml:<?xml version="1.0" encoding="utf-8"?><ProgressBar xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="30dp" android:layout_gravity="right" android:paddingRight="5dp" />Para controlar quando vai aparecer o item ou a progressbar, a estrutura da classe devera ser parecida com a que segue (odeio colar trechos muito grandes de codigo no site, mas paciencia que vou explicar tudo la embaixo):import android.app.Activity;import android.os.AsyncTask;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.Toast;public class MainActivity extends Activity { private boolean atualizando = false; private Menu mOptionsMenu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getActionBar().setDisplayHomeAsUpEnabled(true); } @Override public void onBackPressed() { if (atualizando == true) { Toast.makeText(this, "Aguarde...", Toast.LENGTH_LONG).show(); } else { super.onBackPressed(); } } private void atualizar() { atualizando = true; setAtualizando(atualizando); new Operacao().execute(); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: onBackPressed(); break; case R.id.action_atualizar: atualizar(); break; } return true; } @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); mOptionsMenu = menu; getMenuInflater().inflate(R.menu.atualizar, menu); // atualizar(); return true; } public void setAtualizando(boolean atualizando) { if (mOptionsMenu == null) { return; } MenuItem atualizarItem = mOptionsMenu.findItem(R.id.action_atualizar); if (atualizarItem != null) { if (atualizando) { atualizarItem.setActionView(R.layout.actionbar_atualizar); } else { atualizarItem.setActionView(null); } } } class Operacao extends AsyncTask<Void, Void, Void> { Exception exception = null; @Override protected Void doInBackground(Void... params) { try { // Neste bloco voce executa suas operacoes Thread.sleep(2000); } catch (Exception e) { exception = e; } return null; } @Override protected void onPostExecute(Void result) { super.onPostExecute(result); if (exception == null) { atualizando = false; setAtualizando(atualizando); } else { Toast.makeText(MainActivity.this, "Ocorreu um erro: " + exception.getMessage(), Toast.LENGTH_LONG).show(); } } }}Bom, no comeco temos duas variaveis: atualizando e mOptionsMenu. A primeira e simplesmente para identificar se a atualizacao esta ocorrendo ou nao em determinado momento. A segunda recebera o menu assim que ele for criado e permitira a troca entre o item e a progressbar quando necessario.Em seguida temos os seguintes metodos:onCreate: Nao tem nada de especial alem do comando getActionBar().setDisplayHomeAsUpEnabled(true), que adiciona o item "voltar" na actionbar. onBackPressed: E tratado se a atualizacao esta ocorrendo e nao permitira voltar se for verdade. atualizar: Configura a barra com o setAtualizando e executa a tarefa que executara as operacoes de atualizacao. Falo sobre a classe que executa a tarefa logo abaixo. onOptionsItemSelected: Verifica qual item do menu foi clicado e executa a acao correspondente. onCreateOptionsMenu: A variavel recebe o menu e caso queira que a Activity ja inicie atualizando, basta descomentar o comando atualizar(). setAtualizando: E o responsavel por mostrar o item ou a progressbar na actionbar. Por fim temos a classe interna Operacao, uma subclasse de AsyncTask que nos permite executar tarefas em background e atualizar a interface sem precisar de threads. Nao vou entrar em detalhes sobre este tipo de classe, apenas saiba que o metodo doInBackground e usado para executar as operacoes (no