Skip to content

Most visited

Recently visited

navigation

Configuración de la barra de app

En su forma más básica, la barra de acciones muestra el título de la actividad en uno de los laterales y un menú ampliado en el otro. Incluso en esta forma sencilla, la barra de app proporciona información útil a los usuarios y ayuda a dar un aspecto uniforme a las apps de Android.

Figura 1: Barra de app con el título de app y menú ampliado.

A partir de Android 3.0 (nivel de API 11), todas las actividades que usan el tema predeterminado tienen una ActionBar como barra de app. No obstante, las funciones de la barra de app se han ido agregando gradualmente a la ActionBar nativa en diferentes versiones de Android. Como consecuencia, la ActionBar nativa se comporta de forma diferente según la versión del sistema Android que use un dispositivo. Por el contrario, las funciones más recientes se agregan a la versión de Toolbar de la biblioteca de compatibilidad y están disponibles en todos los dispositivos que puedan usar la biblioteca de compatibilidad.

Por este motivo, debes usar la clase Toolbar de la biblioteca de compatibilidad para implementar las barras de app de tus actividades. El uso de la barra de herramientas de la biblioteca de compatibilidad ayuda a garantizar que tu app tenga un comportamiento uniforme en la mayor cantidad de dispositivos posible. Por ejemplo, el widget Toolbar proporciona una experiencia de material design en dispositivos con Android 2.1 (nivel de API 7) o versiones posteriores, pero la barra de acciones nativa no admite material design a menos que el dispositivo tenga Android 5.0 (nivel de API 21) o versiones posteriores.

Agregar una barra de herramientas a una actividad

En los siguientes pasos se describe la manera de configurar una Toolbar como la barra de app de tu actividad:
  1. Agrega la biblioteca de compatibilidad v7 appcompat a tu proyecto, como se describe en Configuración de la biblioteca de compatibilidad.
  2. Asegúrate de que la actividad extienda AppCompatActivity:
    public class MyActivity extends AppCompatActivity {
      // ...
    }
    

    Nota: Realiza este cambio para todas las actividades de tu app que usen una Toolbar como barra de app.

  3. En el manifiesto de la app, configura el elemento <application> para usar uno de los temas NoActionBar de appcompat. El uso de uno de estos temas evita que en la app se use la clase ActionBar nativa para proporcionar la barra de app. Por ejemplo:
    <application
        android:theme="@style/Theme.AppCompat.Light.NoActionBar"
        />
    
  4. Agrega una Toolbar al diseño de la actividad. Por ejemplo, el siguiente código de diseño agrega una Toolbar y hace que esta flote por encima de la actividad:
    <android.support.v7.widget.Toolbar
       android:id="@+id/my_toolbar"
       android:layout_width="match_parent"
       android:layout_height="?attr/actionBarSize"
       android:background="?attr/colorPrimary"
       android:elevation="4dp"
       android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
    

    En la especificación de material design se recomienda que las barras de app tengan una elevación de 4 dp.

    Ubica la barra de herramientas en la parte superior del diseño de la actividad, ya que la usarás como una barra de app.

  5. En el método onCreate() de la actividad, llama al método setSupportActionBar() de la actividad y pasa la barra de herramientas de la actividad. Este método establece la barra de herramientas como la barra de app de la actividad. Por ejemplo:
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
        Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
        setSupportActionBar(myToolbar);
        }
    

Ahora tu app tiene una barra de acciones básica. De forma predeterminada, la barra de acciones contiene solo el nombre de la app y un menú ampliado. El menú de opciones inicialmente contiene solo el elemento Settings. Puedes agregar más acciones a la barra de acciones y al menú ampliado, como se describe en Adición y manejo de acciones.

Usar los métodos de utilidad de la barra de app

Una vez que configures la barra de herramientas como una barra de app de la actividad, podrás acceder a los diferentes métodos de utilidad que proporciona la clase ActionBar de la biblioteca de compatibilidad v7 appcompat. Este enfoque te permite realizar varias acciones útiles, como ocultar y mostrar la barra de app.

Para usar los métodos de utilidad de ActionBar, llama al método getSupportActionBar() de la actividad. Este método muestra una referencia a un objeto appcompat ActionBar. Una vez que tengas esa referencia, podrás llamar a cualquiera de los métodos de ActionBar para ajustar la barra de app. Por ejemplo, para ocultar la barra de app llama a ActionBar.hide().

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Follow Google Developers on WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)