¿Cómo agregar Easy FlipView en Android?

EasyFlipView es una biblioteca de Android que nos permite crear fácilmente una vista flip en nuestra aplicación de Android. Podemos usar esta función en muchas aplicaciones, como la aplicación en la que almacenamos los detalles de la tarjeta de crédito o débito del usuario (el usuario puede voltear fácilmente la tarjeta para ver el CVV de la tarjeta). A continuación se proporciona un GIF de muestra para tener una idea de lo que vamos a hacer en este artículo. Tenga en cuenta que vamos a implementar este proyecto utilizando el lenguaje Java

Add Easy FlipView in Android Sample GIF

Tabla de atributos

Nombre del Atributo

Valor por defecto

Descripción

aplicación:flipOnTouch=”verdadero” verdadero Si la tarjeta debe girarse al tacto o no.
app:flipDuration=”400″ 400 La duración de la animación flip en milisegundos.
aplicación: flipEnabled = «verdadero» verdadero Si esto se establece en falso, entonces no cambiará nunca en Vista única y siempre tiene que ser falso para RecyclerView
aplicación:flipType=”horizontal” vertical Si la tarjeta debe voltearse en vertical u horizontal

app:flipFrom=”derecha” 

aplicación:flipFrom=”atrás”

izquierda 

frente

Si la tarjeta debe voltearse de izquierda a derecha o de derecha a izquierda (tipo horizontal) o si el automóvil debe voltearse hacia adelante o hacia atrás (tipo vertical)
aplicación: autoFlipBack = «verdadero» falso Si se establece en verdadero, la tarjeta volverá al anverso original después del tiempo establecido en autoFlipBackTime.
aplicación:autoFlipBackTime=”1000″ 1000 El tiempo en milisegundos (ms), después de que la tarjeta se vuelva a colocar en el anverso original.

Implementación paso a paso

Paso 1: Crear un nuevo proyecto

Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Java como lenguaje de programación.

Paso 2: antes de ir a la sección de codificación, primero haga una tarea previa

Vaya a aplicación -> res -> valores -> archivo colors.xml y configure los colores para la aplicación.

XML

<?xml version="1.0" encoding="utf-8"?>
<resources>
  
    <color name="colorPrimary">#0F9D58</color>
    <color name="colorPrimaryDark">#0F9D58</color>
    <color name="colorAccent">#05af9b</color>
    <color name="white">#ffffff</color>
   
</resources>

Vaya a la sección Gradle Scripts -> build.gradle (Módulo: aplicación) e importe las siguientes dependencias y haga clic en «el» en la ventana emergente anterior.

implementación ‘com.wajahatkarim3.EasyFlipView:EasyFlipView:3.0.0’

Paso 3: Diseño de la interfaz de usuario

En activity_main.xml, elimine la Vista de texto predeterminada y cambie el diseño a Diseño relativo y agregue EasyFlipView y, dentro de él, incluimos 2 diseños   card_layout_back.xml y card_layout_front.xml (Creamos un diseño 2 en el siguiente paso), siga las mismo paso y agregue una card_layout_front más de tipo horizontal . A continuación se muestra el código para el archivo activity_main.xml .

XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
  
    <!-- Vertical Flip View -->
    <com.wajahatkarim3.easyflipview.EasyFlipView
        android:id="@+id/easyFlipViewVertical"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:autoFlipBack="true"
        app:autoFlipBackTime="2000"
        app:flipDuration="400"
        app:flipEnabled="true"
        app:flipFrom="front"
        app:flipOnTouch="true"
        app:flipType="vertical">
  
        <!-- Back Layout  -->
        <include layout="@layout/card_layout_back" />
  
        <!-- Front Layout -->
        <include layout="@layout/card_layout_front" />
  
    </com.wajahatkarim3.easyflipview.EasyFlipView>
  
    <!-- Horizontal Flip View -->
    <com.wajahatkarim3.easyflipview.EasyFlipView
        android:id="@+id/easyFlipViewHorizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        app:autoFlipBack="false"
        app:flipDuration="400"
        app:flipEnabled="true"
        app:flipFrom="right"
        app:flipOnTouch="true"
        app:flipType="horizontal">
  
        <!-- Back Layout -->
        <include layout="@layout/card_layout_back" />
  
        <!-- Front Layout  -->
        <include layout="@layout/card_layout_front" />
  
    </com.wajahatkarim3.easyflipview.EasyFlipView>
      
</RelativeLayout>

Ahora vaya a res -> diseño y haga clic con el botón derecho en él, luego Nuevo -> Archivo de recursos de diseño (nombre el archivo card_layout_back ). Ahora abra el archivo card_layout_back.xml , agregue un ImageView simple y configure el src como la imagen que desea. A continuación se muestra el código para el archivo card_layout_back.xml

XML

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
  
    <!-- simple image view -->
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="8dp"
        android:src="@drawable/card_back" />
      
</androidx.constraintlayout.widget.ConstraintLayout>

Repita el paso anterior y cree el archivo card_layout_front.xml . A continuación se muestra el código para el archivo card_layout_front.xml

XML

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
  
    <!-- simple image view -->
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="8dp"
        android:src="@drawable/card_front" />
  
</androidx.constraintlayout.widget.ConstraintLayout>

Paso 4: Parte de codificación

Podemos agregar un OnFlipAnimationListener tanto a la vista horizontal como a la vertical y cuando el usuario voltea la tarjeta, simplemente mostramos un mensaje de brindis. A continuación se muestra el código completo del archivo MainActivity.java . Se agregan comentarios dentro del código para comprender el código con más detalle.

Java

import android.os.Bundle;
import android.widget.Toast;
  
import androidx.appcompat.app.AppCompatActivity;
  
import com.wajahatkarim3.easyflipview.EasyFlipView;
  
public class MainActivity extends AppCompatActivity {
  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
  
        // creating objects of  EasyFlipView
        EasyFlipView easyFlipViewVertical = (EasyFlipView) findViewById(R.id.easyFlipViewVertical);
        EasyFlipView easyFlipViewHorizontal = (EasyFlipView) findViewById(R.id.easyFlipViewHorizontal);
  
  
        // creating OnFlipAnimationListener for easyFlipViewVertical
        easyFlipViewVertical.setOnFlipListener(new EasyFlipView.OnFlipAnimationListener() {
            @Override
            public void onViewFlipCompleted(EasyFlipView flipView, EasyFlipView.FlipState newCurrentSide) {
                // showing simple toast message to the user
                Toast.makeText(MainActivity.this, "Vertical Flip Completed :)", Toast.LENGTH_SHORT).show();
            }
        });
  
        // creating OnFlipAnimationListener for easyFlipViewHorizontal
        easyFlipViewHorizontal.setOnFlipListener(new EasyFlipView.OnFlipAnimationListener() {
            @Override
            public void onViewFlipCompleted(EasyFlipView flipView, EasyFlipView.FlipState newCurrentSide) {
                // showing simple toast message to the user
                Toast.makeText(MainActivity.this, "Horizontal Flip Completed :)", Toast.LENGTH_SHORT).show();
            }
        });
    }
}

Producción: 

Publicación traducida automáticamente

Artículo escrito por onlyklohan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *