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

Mapas interactivos – El proyecto – Parte 2

Mapas interactivos – El proyecto – Parte 2

Comenzando este tutorial, primero necesitamos definir la «estructura» de nuestro proyecto. Haremos uso del IDE de Dreamw...

Personalizar JTable: Tabla con footer

Personalizar JTable: Tabla con footer

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

Uso de Arrays: Ejemplo práctico

Uso de Arrays: Ejemplo práctico

En este post iremos conociendo de un modo práctico que es y como se utiliza un Array en java, para esto partiremos de un...

Envía mensajes temporales y cifrados

Envía mensajes temporales y cifrados

Secret (https://getsecret.now.sh/) es una aplicación web gratuita que te permite enviar mensajes temporales cifrados que...

Terminator: Terminal multiventanas para Linux

Terminator: Terminal multiventanas para Linux

Cada versión de Linux viene con su propia terminal predeterminada para interactuar con el Sistema Operativo a través de...

Biblioteca Matemática avanzada para java

Biblioteca Matemática avanzada para java

Java cuenta con la clase java.lang.Math  la cual contiene métodos para realizar operaciones numéricas básicas como las f...

Comparte lo que sabes

Categorias

Últimas entradas

El gigante tecnologico Google a puesto un bonito Doodle en su buscador que esta fascinando a sus millones de usuarios qu...

WhatsApp anuncio a través de su blog que ya se encuentra disponible la función de envío de fotos y videos TEMPORALES, es...

Muchas de las innovaciones computacionales de la NASA se desarrollaron para ayudar a explorar el espacio, pero ahora la...

TikTok es una plataforma de microvideos muy popular entre los jóvenes el cual cuenta ya con millones de videos cortps de...

Herramientas

Generador de Enlaces a Whatsapp