Desplazar ImageView en Android

En este artículo, vamos a implementar una función muy importante relacionada con ImageView. La imagen seguirá desplazándose horizontalmente por sí misma. Cuando hacemos clic en la imagen, dejará de desplazarse y cuando volvamos a hacer clic, seguirá desplazándose. Podemos usar esta característica para mostrar animación en una aplicación. Esta función se puede utilizar en la aplicación de compras en línea. Cuando el artículo está listo para la entrega, pueden usar esta función para mostrar el destino.

Scroll ImageView in Android Sample GIF

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: agregue la dependencia y el repositorio de JitPack

Navegue a Gradle Scripts > build.gradle(Module:app) y agregue la siguiente dependencia en la sección de dependencias.   

implementación ‘com.github.Q42:AndroidScrollingImageView:1.3.4’

Agregue el repositorio de JitPack a su archivo de compilación. Agréguelo a su root build.gradle al final de los repositorios dentro de la sección allprojects{ }.

todos los proyectos {

 repositorios {

   …

   experto {url «https://jitpack.io»}

     }

}

Después de agregar esta dependencia, sincronice su proyecto y ahora avanzaremos hacia su implementación.  

Paso 3: trabajar con el archivo activity_main.xml

Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml . Hay tres atributos para Scrolling ImageView :

  • la velocidad es el número de dp para mover el dibujable por segundo
  • la fuente es dibujable para pintar. Puede referirse a una variedad de dibujables
  • contiguos Cuando la fuente es una array de dibujables, los contiguos determinan su orden.

XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:scrolling_image_view="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="0dp"
    tools:context=".MainActivity">
  
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true">
  
        <com.q42.android.scrollingimageview.ScrollingImageView
            android:id="@+id/scrolling_background"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            scrolling_image_view:source="@drawable/scrolling_background"
            scrolling_image_view:speed="60dp" />
  
        <com.q42.android.scrollingimageview.ScrollingImageView
            android:id="@+id/scrolling_foreground"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            scrolling_image_view:source="@drawable/scrolling_foreground"
            scrolling_image_view:speed="150dp" />
          
    </FrameLayout>
  
    <ImageView
        android:id="@+id/scr"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:scaleType="centerInside"
        android:src="@drawable/van" />
  
</RelativeLayout>

Nota : Los archivos dibujables se pueden encontrar aquí .

Paso 4: trabajar con el archivo MainActivity.java

Vaya al archivo MainActivity.java y consulte el siguiente código. A continuación se muestra el código 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 androidx.appcompat.app.AppCompatActivity;
  
import com.q42.android.scrollingimageview.ScrollingImageView;
  
public class MainActivity extends AppCompatActivity {
  
    boolean moving1 = true, moving2 = true;
  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final ScrollingImageView scrollingBackground = (ScrollingImageView) findViewById(R.id.scrolling_background);
  
        scrollingBackground.start();
    }
}

Producción:

Publicación traducida automáticamente

Artículo escrito por annianni 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 *