Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Android / Material Design: CardView (Tarjetas)

Material Design: CardView (Tarjetas)

Autor jc mouse lunes, mayo 29, 2017

Un CardView es parte de los estilos de Material Design y nos permite mostrar información dentro de tarjetas (Card), esta información puede mostrarse más de una vez en una actividad usando un Cardview y un RecyclerView, aunque esto no es obligatorio, es lo más usual.

A continuación conoceremos un poco más sobre este CardView y su uso desde Android Studio.

Partiremos de un proyecto básico que llamaremos “Tarjetas

tarjeta android

Lo primero que debemos hacer para trabajar con Material Design, es agregar las dependencias necesarias para que estos widgets funcionen.

Abre el archivo build.Gradle y agrega:

compile ‘com.android.support:cardview-v7:25.3.+’

en la sección de dependencias, es decir:

gradle dependencies

Importante: deben coincidir las versiones de compileSdkVersion y de las dependencias de CardView, en este ejemplo  es el SDK “25”. Si tu utilizas otra versión del SDK debes o actualizar tu SDK o utilizar la versión que corresponda, es decir, para un compileSdkVersion: 23 podría usarse un compile ‘com.android.support:cardview-v7:23.1.+’

Usando Tarjetas (CardView)

Abre el archivo activity_main.xml y reemplaza el contenido por:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="16dp"
    android:background="#b3e8ff"
    android:orientation="vertical"
    tools:context="org.example.tarjetas.MainActivity">

    <!-- Tarjeta -->
    <android.support.v7.widget.CardView
        android:layout_margin="5dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hola Mundo Cruel"/>

    </android.support.v7.widget.CardView>
    <!-- Tarjeta:end -->

</LinearLayout>

el contenido entre <!– Tarjeta –>…<!– Tarjeta:end –> es lo mínimo necesario para trabajar con cardview, es decir, declaramos el contenedor (cardview) y su contenido (en este caso un TextView)

ejecuta y podrás ver en pantalla algo como esto:

material

CardView cuenta con algunas propiedades que nos permiten personalizar las tarjetas:

  • cardCornerRadius: Radio de las esquinas
  • cardElevation: Sombra
  • cardBackgroundColor: Color de fondo de la tarjeta

Reemplaza el contenido entre  <!– Tarjeta –>…<!– Tarjeta:end –>  por:

<!-- Tarjeta -->
    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"

        card_view:cardCornerRadius="8dp"
        card_view:cardElevation="5dp"
        card_view:cardBackgroundColor="#ff7c58"

        android:layout_margin="10dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hola Mundo Cruel\n¿Como estas hoy?\nYo bien :)"/>

    </android.support.v7.widget.CardView>

    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"

        card_view:cardCornerRadius="50dp"
        card_view:cardElevation="8dp"
        card_view:cardBackgroundColor="#ff110d"

        android:layout_gravity="center|center"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <ImageView
                android:src="@mipmap/ic_launcher"
                android:layout_gravity="center|center"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textColor="#FFF"
                android:gravity="center|center"
                android:text="Android Bolivia"/>

        </LinearLayout>


    </android.support.v7.widget.CardView>
    <!-- Tarjeta:end -->

Ejecuta la aplicación

cardCornerRadius

Tenemos dos tarjetas personalizadas, podemos observar en el segundo ejemplo que CardView al ser un contenedor, podemos colocar más de un objeto para realizar nuestro diseño.

Finalmente presentamos un ejemplo más elaborado de lo que se puede hacer con un CardView, se usaron LinearLayout, TextView, ImageView y algunas imágenes sacadas de Google Tiempo, inténtalo haber como te queda:

time bolivian

Eso es todo por el momento, en post futuros veremos como trabajar con Tarjetas (Cardview) y listas (RecyclerView).

IMPORTANTE: Si tienes algún problema al ejecutar los ejemplos de este de este post y el error que tienes, tiene que ver con VectorDrawableCompat, debes actualizar tu GRADLE

enjoy!!!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Material Design: Notificaciones (Snackbar)

Material Design: Notificaciones (Snackbar)

Material Design introduce una nueva forma de mostrar notificaciones al usuario, estos son los snackbar, similares a los...

NBANDROID-V2 plugin para Netbeans

NBANDROID-V2 plugin para Netbeans

Cuando Android estaba en sus inicios, varios IDEs (Entorno de Desarrollo Integrado​​) se disputaban el dominio por su de...

Bandera en Alto

Bandera en Alto

EL 6 de agosto de cada año se recuerda una de las fechas más importantes de la historia boliviana, porque el 6 de Agosto...

Autenticación en php con MySql y POO

Autenticación en php con MySql y POO

Autenticación en una pagina web es el proceso de confirmar que un usuario es quien dice ser, asi de simple. En el siguie...

Operadores de comparación en Bash

Operadores de comparación en Bash

En este post conoceremos algunos de los operadores de comparación que existen en Linux y realizaremos unos ejercicios pa...

Agregar JComboBox a un JTable

Agregar JComboBox a un JTable

En este post, crearemos una tabla swing que implemente un control jcombobox en una columna de una tabla, llenaremos con...

Comparte lo que sabes

Categorias

Últimas entradas

“MyBatis es una herramienta de persistencia Java que se encarga de mapear sentencias SQL y procedimientos almacena...

MyBatis es un framework de persistencia Java que se encarga de mapear sentencias SQL y procedimientos almacenados a part...

Webcam Capture es un API  que permite usar una cámara web incorporada o externa directamente desde código Java utilizand...

im4java es una interfaz pura de Java para la línea de comandos de ImageMagick. La interfaz de la línea de comandos de IM...

Herramientas

Generador de Enlaces a Whatsapp