Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Android / Botón Mágico

Botón Mágico

Autor jc mouse miércoles, diciembre 27, 2017

Magic Button, es un botón animado para android bajo licencia del MIT desarrollado por Bloder (Brasil), el proyecto esta disponible en GitHub.

  • Proyecto Magic Button en GitHub

A continuación, implementaremos este Magic Button en un proyecto de Android Studio.

Partimos de un proyecto vacío con las siguientes características:

  • Nombre proyecto: Botón Mágico
  • Domain: org.example.botonmagico
  • Plantilla: Empty Activity
  • Activity Name: MainActivity
  • Layout Name: activity_main

Paso 1. Gradle

Abrimos el archivo build.gradle (Module: App) y agregamos :

compile ‘com.github.bloder:magic:1.1’

a la sección de dependencias, es decir:

gradle bolivia

Paso 2. Layout

El código XML del botón mágico es el siguiente:

<br.com.bloder.magic.view.MagicButton
        android:id="@+id/magic_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:magic_button_size="50dp"
        app:button_icon="@drawable/your_icon"
        app:button_icon_width="25dp"
        app:button_icon_height="25dp"
        app:hide_text="Hi Mom!"
        app:hide_text_size="15dp"
        app:hide_text_color="@android:color/black"
        app:icon_button_color="button_icon_color"
        app:expandable_area_color="that_expandable_button_part_color"/>

Este código lo agregamos en el layout donde queramos mostrar el botón, para nuestro ejemplo:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="org.example.botonmagico.MainActivity">

    <br.com.bloder.magic.view.MagicButton
        android:id="@+id/magic_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:magic_button_size="50dp"
        app:button_icon="@drawable/ic_launcher"
        app:button_icon_width="25dp"
        app:button_icon_height="25dp"
        app:hide_text="Hola Mundo!"
        app:hide_text_size="8dp"
        app:hide_text_color="@android:color/white"
        app:icon_button_color="#ff0000"
        app:expandable_area_color="#9c0000"/>

</RelativeLayout>

Modificamos los valores a nuestro gusto, usaremos tambien el icono por defecto de android ic_launcher

Paso 3: Código

De nada nos sirve un botón si no podemos ejecutar una acción al presionarlo, para ello, modificamos nuestro clase MainActivity de la siguiente manera:

package org.example.botonmagico;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    private br.com.bloder.magic.view.MagicButton magicButton;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        magicButton = (br.com.bloder.magic.view.MagicButton) findViewById(R.id.magic_button);

        magicButton.setMagicButtonClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //Codigo a ejecutar
            }
        });

    }
}

Y nuestro resultado

boton magico

Magic Button Brazil

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

Ejemplo socket java Cliente/Servidor

Ejemplo socket java Cliente/Servidor

En este post construiremos un sencillo sistema Cliente/Servidor en lenguaje Java, el sistema consistirá básicamente en u...

Integración de FFmpeg con Java

Integración de FFmpeg con Java

FFmpeg es una colección de software libre capaz de decodificar, codificar, transcodificar, mux, demux, transmitir, filtr...

Recolección, extracción y análisis de Metadatos

Recolección, extracción y análisis de Metadatos

La recolección de información (Information Gathering) es una de las partes más importantes en la planificación y ataques...

Ciudadanía digital y seguridad en Internet

Ciudadanía digital y seguridad en Internet

«Be Internet Awesome» (Se genial en Internet) es un recurso de Google para la enseñanza  de conceptos fundamentales sobr...

Pon a prueba tu código con Android Studio

Pon a prueba tu código con Android Studio

Realizar pruebas sobre nuestro código nos permiten comprobar su correcto funcionamiento e integración con otros módulos...

Tres cursos de programación de la Universidad de Stanford

Tres cursos de programación de la Universidad de Stanford

La Universidad Leland Stanford Junior, conocida mundialmente como la Universidad Stanford, es una universidad privada es...

Comparte lo que sabes

Categorias

Últimas entradas

En muchas ocasiones es necesaria la personalización de componentes java para que estos se adecuen a nuestros requerimien...

En este post mostramos como personalizar el Header (encabezado) de un componente JTable en Java colocando iconos, centra...

El JTable de Java es un gran componente para mostrar datos en una tabla de una forma rápida y sencilla, sin embargo en v...

En este post veremos un ejemplo sencillo de como descargar desde Internet archivos de cualquier tipo (*.jpg, *.png, *.gi...

Herramientas

Generador de Enlaces a Whatsapp