¿Haga clic en el botón de Android para cambiar el diseño?
El cambio de pantalla se refiere al cambio de pantalla dentro de la misma actividad. La situación más común es que hay varias páginas en un FrameLayout, como una página de configuración del sistema.
Al observar la documentación de la API de OPhone, podemos encontrar que hay una clase android.widget.ViewAnimator heredada de FrameLayout. La función de la clase ViewAnimator es proporcionar efectos de animación para el cambio de vista en FrameLayout. Esta clase tiene las siguientes funciones relacionadas con la animación:
setInAnimation: Establece la animación utilizada cuando View ingresa a la pantalla. Esta función tiene dos versiones, una acepta un solo parámetro y es de tipo android.view.animation. Animación; se aceptan dos parámetros, de tipo Contexto e int, que son el objeto Contexto y el ID de recurso que define la Animación respectivamente.
Código Java:
setOutAnimation: establece la animación utilizada cuando la Vista sale de la pantalla. Los parámetros de la función setInAnimation son los mismos.
showNext: Llame a esta función para mostrar la siguiente Vista en FrameLayout.
showPrevious: Llame a esta función para mostrar la Vista anterior en FrameLayout.
Copiar código
Generalmente no se usa ViewAnimator directamente sino sus dos subclases, ViewFlipper y ViewSwitcher. ViewFlipper se puede utilizar para especificar el efecto de cambio entre múltiples Vistas en FrameLayout. Puede especificarlo una vez o especificar un efecto separado cada vez que cambia. Esta clase proporciona las siguientes funciones adicionales:
código Java:
isFlipping: se utiliza para determinar si el cambio de vista está en progreso
setFilpInterval: establece el intervalo entre vistas Intervalo de tiempo de cambio
startFlipping: utilice el intervalo de tiempo establecido anteriormente para comenzar a cambiar todas las vistas y el cambio se repetirá
stopFlipping: detener el cambio de vista
Copiar Código
ViewSwitcher Como sugiere el nombre, Switcher se refiere específicamente a cambiar entre dos Vistas. Puede usar esta clase para especificar una clase de ingeniería ViewSwitcher.ViewFactory para crear estas dos Vistas. Esta clase también tiene dos subclases, ImageSwitcher y TextSwitcher, para cambiar imágenes y texto respectivamente.
Ejemplo de ViewFlipper
ViewFlipper se hereda de FrameLayout, por lo que puede colocar varias vistas en un diseño. Defina un ViewFlipper en el ejemplo, que contiene tres ViewGroups como las tres pantallas del ejemplo. Cada ViewGroup contiene un botón y una imagen. Al hacer clic en el botón, se muestra la siguiente pantalla.
El código es el siguiente (res\layout\main.xml):
código java:
lt;?xml version="1.0" encoding="utf-8"?gt
lt; p>
lt; LinearLayout
xmlns: android="/apk/res/android"
android: orientación="vertical "
android: layout_width="fill_parent"
android: layout_height="fill_parent"gt;
lt; ViewFlipper android: id="@ id/detalles "
android: layout_width="fill_parent"
android: layout_height="fill_parent"
android: persistenteDrawingCache="animation"
android: flipInterval="1000"
android:inAnimation="@anim/push_left_in"
android:outAnimation="@anim/push_left_out"
gt;
lt; LinearLayout
Android: orientación="vertical"
Android: Layout_width="fill_parent"
Android: Layout_height=" fill_parent"gt;
lt;Botón
android: text="Siguiente"
android: id="@ id/Button_next1"
android: layout_width="fill_parent"
android:layout_height="wrap_content"gt
lt;/Buttongt
lt;ImageView
android:id="@ id/image1"
android: src="@drawable/dell1"
android: layout_width="fill_parent"
android: layout_height="wrap_content"gt
lt;/ImageViewgt
lt;/LinearLayoutgt
lt;LinearLayout
android: orientación="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"gt
lt;Botón <; /p>
android:text= "Siguiente"
android:id="@ id/Button_
next2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"gt;
lt;/Buttongt;
lt; ImageView
android:id="@ id/image2"
android:src="@drawable/lg"
android:layout_width=" fill_parent"
android:layout_height="wrap_content"gt;
lt;/ImageViewgt;
lt;/LinearLayoutgt;
lt ; LinearLayout
Android: orientación="vertical"
Android: diseño_width="fill_parent"
Android: diseño_height="fill_parent"gt;
lt;Botón
android: text="Siguiente"
android:id="@id/Button_next3"
android:layout_width="fill_parent "
android:layout_height="wrap_content"gt;
lt;/Buttongt;
lt;ImageView
android:id= "@ id/image3"
android: src="@drawable/lenovo"
android: layout_width="fill_parent"
android: layout_height="wrap_content "gt;
lt;/ImageViewgt;
lt;/LinearLayoutgt;
lt;/ViewFlippergt;
lt;/LinearLayoutgt
Copiar código
Enlace de publicación de la serie Android cambiando múltiples interfaces de diseño (2)/thread-90754-1-1.html
Serie Android cambiando múltiples; interfaces de diseño (3) Enlace de publicación/thread-90759-1-1.html