ActionBarCompat I: Adios ActionBarSherlock

Como avanzábamos en el post de ayer, a lo largo de la semana publicaremos una serie de tutoriales con la finalidad de aprender a utilizar el control de la barra de tareas ActionBarCompat.
En este primer tutorial, comenzaremos a explicar el uso básico de la barra de tareas, así como los diferentes items que podremos incluir en la misma.

Dicho esto, comenzaremos por la creación y definición del proyecto donde vamos a utilizar dicho control. Para ello, nos iremos a nuestro IDE de desarrollo Android(en nuestro caso eclipse) y crearemos un nuevo proyecto con el target y versión de compilado API 19.
Una vez creado nuestro proyecto, añadiremos la libreria android-supportV7 a nuestro proyecto. Dicha libreria se encuentra en la siguiente ruta android-sdk/extras/android/support/v7/appcompat.

Tras definir nuestro proyecto, el primero de los pasos que vamos a llevar a cabo, es definir el tema principal de la aplicación. Para ello, nos iremos a nuestro documento styles.xml  y definiremos el tema principal.

<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">

Como podemos ver hemos establecido el tema AppCompat.Light como tema de nuestra aplicación.
Acto seguido nos iremos a nuestra actividad principal (MainActivity) y la haremos extender de la clase ActionBarActivity.
Cada una de las actividades que tengamos en nuestra aplicación deberá extender de la clase ActionBarActivity si deseamos hacer uso de alguno de sus elementos o del control de las transiciones entre actividades.

public class MainActivity extends ActionBarActivity {
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

Una vez definida la barra de tareas, pasaremos a añadir diferentes items con diferentes funcionalidades.
Para definir nuestros elementos, abriremos nuestro documento main.xml (dentro de la carpeta menu) y añadiremos tantos items como deseemos utilizar. En nuestro caso, utilizaremos un botón que abrirá a una nueva actividad y el botón search que nos permitirá llevar a cabo la búsqueda de un elemento en un momento determinado.

<menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/action_search"
        android:title="@string/action_search"
        android:icon="@drawable/ic_action_search"
        app:showAsAction="ifRoom" />
    <item
        android:id="@+id/action_profile"
        android:title="@string/action_profile"
        app:showAsAction="ifRoom" />
</menu>

Por último, añadiremos el método onCreateOptionsMenu en nuestra actividad principal, donde inflaremos los diferentes items en nuestra barra de tareas como podemos ver a continuación.

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

Con todo ello, nuestro barra de tareas estará formada por los elementos definidos y que dotaremos de funcionalidad en entradas posteriores.

Espero que sea interesante. Un saludo 😉

ActionBarCompat : Implementación de una barra de tareas convencional y moderna.

Desde hace relativamente poco tiempo (Android 4.0) la barra de tareas presenta un aspecto con mayor presencia y funcionalidad en nuestras aplicaciones móviles.

Como podremos ver en muchas de las aplicaciones que utilizamos a diario, nuestra barra de tareas nos permite realizar diferentes funciones (búsqueda de contenido, actualización de datos, acceso directo a otras partes de la aplicación, compartir elementos, etc….).

El principal problema de este control sobre nuestra barra de tareas era la compatibilidad con las versiones de Android inferiores a Android HoneyComb. Esto es debido a que Google no había integrado dicha funcionalidad en su libreria android-support hasta Julio de 2013.

Hasta este momento, si queríamos utilizar esta barra de tareas en versiones anteriores teníamos que utilizar librerías de terceros como la popularmente conocida ActionBarSherlock.

Como os podréis imaginar, la integración del control sobre la barra de tareas en la librería android-support para versiones anteriores a Android HoneyComb ha cambiado la vida de los desarrolladores, permitiéndonos hacer uso de un componente nativo, evitando con ello, la utilización de librerías de terceros, que como habréis experimentado requieren de un mayor control de versiones.

Es por ello, que en los próximos días implementaremos diferentes ejemplos que hacen uso de la barra de tareas en una aplicación Android convencional y las diferentes funcionalidades que podremos incluir en dicha barra de tareas.

Espero que os sirva de ayuda ! 🙂

Hello world .porexpertos.es !!!

Hoy 27 de Abril inauguramos este blog, cvizosor.porexpertos.es con la finalidad de aportar algunas de las herramientas, usos, consejos y prácticas relacionadas con el desarrollo de aplicaciones móviles y en especial de la tecnología Android. Espero que volváis de nuevo por aquí y os sirvan de ayuda los aportes que podamos ir añadiendo semana tras semana. Un saludo