En mi actividad principal, donde no hay forma de volver atrás, me gustaría eliminar el botón de "inicio" de la aplicación en la barra de acciones.

Creo que es confuso para el usuario, que aún puede salir de la aplicación con el botón de retroceso del sistema operativo.

Al navegar por stackoverflow, vi a mucha gente preguntando esto, y ni una sola respuesta funcionó para mí. Aquí está la lista :

Las respuestas suelen ser redondas y se pueden resumir en las siguientes:

ActionBar supportActionBar = getSupportActionBar(); //I target some low API
if(supportActionBar != null) {
    supportActionBar.setDisplayShowHomeEnabled(false);
    supportActionBar.setDisplayHomeAsUpEnabled(false);
    supportActionBar.setHomeButtonEnabled(false);
    supportActionBar.setHomeAsUpIndicator(null);
}

Probé todas las combinaciones de esos y nada funcionó, ya sea que lo intente con el ActionBar predeterminado o con un compat-v7 ToolBar declarado en XML con setSupportActionBar().

Tampoco pude ver ninguna pregunta adaptada para la barra de aplicaciones recomendada ahora, y una respuesta con ella sería aún mayor.

Aquí está mi manifiesto de actividad:

<activity
    android:name=".activity.WelcomeActivity"
    android:logo="@drawable/ic_launcher"
    android:label="@string/long_app_name"
    android:launchMode="singleTop"/>

Entonces, ¿es posible eliminar esta molesta flecha inútil hoy en día?

1
Dan Chaltiel 14 nov. 2017 a las 20:51

2 respuestas

La mejor respuesta

Crea un nuevo estilo en styles.xml:

 <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

Establezca este estilo en su actividad en el archivo de manifiesto. Para agregar la barra de herramientas, agregue esto a su archivo de diseño:

<android.support.v7.widget.Toolbar
        android:background="@color/colorPrimary"
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
    </android.support.v7.widget.Toolbar>

Y luego en tu clase de Java:

Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

Esto eliminará la flecha superior izquierda.

1
Kartik Shandilya 15 nov. 2017 a las 12:34

Simplemente coloque getSupportActionBar().setDisplayHomeAsUpEnabled(false) en onCreate de la actividad.

-1
manjunatha poojari 13 ago. 2018 a las 07:58