Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Logo na ActionBar.

Olá galera!

Não consigo fazer a logo do app aparecer na ActionBar. Tentei de 3 maneiras:

No AndroidManifest na tag application:

android:icon="@drawable/my_icon"
android:icon="@drawable/ic_dashboard_white_48dp"

No AndroidManifest na tag activity:

android:icon="@drawable/my_icon"
android:icon="@drawable/ic_dashboard_white_48dp"

Na classe da activity:

getSupportActionBar().setTitle("Texto alterado");
getActionBar().setIcon(R.drawable.ic_dashboard_white_48dp);

Nem o getSupportActionBar() e getActionBar() funcionam.

Como eu procedo?

Estou usando o Android Studio.

3 respostas
solução!

O getSupportActionBar() e o getActionBar() pertencem à classe ActionBarActivity. Então, esse código funcionará:

public class MinhaActivity extends ActionBarActivity {

    public void onCreate(Bundle b) {
        super...
        setContentView...

        getSupportActionBar().setDisplayShowHomeEnabled(true);
        getSupportActionBar().setLogo(R.drawable.ic_dashboard_white_48dp);
        getSupportActionBar().setDisplayUseLogoEnabled(true);
    }
}

Precisamos fazer esse código, pois o ícone não é mais exibido por padrão na action bar a partir do Android 5.0.

Mas a documentação diz que essa classe está depreciada. Esse é o único modo? Eu pesquisei demais e só vi o que você informou.

Acho que a melhor maneira é colocar um ícone no centro de actionBar. Se tiver como.

Mas pelo que vi do padrão dos app atuais esse ícone não existem mesmo.

Essa classe está obsoleta justamente pela mudança na forma de lidarmos com a action bar. A partir do Android 5 não costumamos colocar o ícone da aplicação na action bar.

O código que coloquei acima era pra mostrar de onde vinham os métodos que você estava procurando.

Caso queira fazer uma "action bar" mais rica, recomendo dar uma olhada na documentação da classe Toolbar.