Código de Android, tengo cinco imágenes, configuro un botón, cómo hacer clic en el botón una vez para pasar a la siguiente imagen
Este problema requiere: dos efectos de animación, un diseño y una clase principal para implementar. Sin más explicaciones, echemos un vistazo. en el código:
clase pública IamgeTrActivity extiende la actividad {
/**** Se llama cuando se crea la actividad por primera vez.
*/
ImageView pública imageView
ImageView pública imageView2
Animación pública animación1
Animación pública
texto TextView público;
juage booleano público = verdadero;
imágenes int públicas[] = nuevo int[] { R.drawable.Icon, R.drawable.Icon, R.drawable.Icon, R.drawable.Icon = truedrawable.icon, R.drawable.expriment,
R.drawable.changer, R.drawable.dataline, R.drawable.preference
; p> p>R.drawable.varer, R.drawable.dataline, R.drawable.preference = truepreference };
recuento de int público = 0
controlador público; handler = new Handler();
ejecutable público runnable = new Runnable() {
@Override
ejecución pública void() {
// TODO genera automáticamente códigos auxiliares de métodos
AnimationSet AnimationSet1 = new AnimationSet(true);
AnimationSet AnimationSet2 = new AnimationSet(true);
imageView2. setVisibility( 0);
TranslateAnimation ta = new TranslateAnimation(
Animation.startAnimation( AnimationSet2);
imageView.setBackgroundResource(imágenes[recuento % 5]) ;
count++;
imageView2.setBackgroundResource( imágenes[count % 5]);
text.setText(String.valueOf(count)); p>
if (juage)
handler.postDelayed(runnable, 6000);
Log.i (handler, handler);
}
};
@Override
public void onCreate(Bundle saveInstanceState) {
super.onCreate( saveInstanceState);
setContentView(R.layout.main);
imageView = (ImageView) findViewById(R.id.imageView);
imageView2 = (ImageView) fin
dViewById(R.id.imageView2);
Super.imageView2);
text=(TextView)findViewById(R.id.text);
texto .setText(String.setVisibility(4);
handler.postDelayed(runnable, 2000);
}
public void onPause() {
juage = false;
super.background =@drawable/expriment
android:layout_below=@+id/rl
android:layout_height= 120dp />
android:id=@+id/text
android:layout_width=fill_parent
android:layout_height=wrap_content
android: layout_below=@id/imageView />
El segundo método: use ViewFlipper para lograr la rotación de la imagen
El sistema Android viene con controles de administración de varias páginas, que pueden realizar el cambio automático de subinterfaces:
Primero, debe agregar View a ViewFlipper
(1) Importación estática: importe directamente en el archivo de diseño
(2) Importación dinámica: método addView()
Métodos comunes de ViewPlipper:
setInAnimation: establece la animación utilizada cuando la Vista ingresa a la pantalla
setOutAnimation: establece la animación utilizada cuando la Vista sale de la pantalla
showNext: Llame a esta función para mostrar la siguiente vista en ViewFlipper
showPrevious: Llame a esta función para mostrar la vista anterior en ViewFlipper
setFlipInterval: establece el intervalo de cambio entre vistas
startFlipping utiliza el intervalo establecido anteriormente para comenzar a cambiar todas las vistas, y el cambio se completará en un bucle
stopFlipping: detiene el cambio de vista
Dicho todo esto, lo implementaremos hoy. ¿Qué?
(1) Usar ViewFlipper para rotar imágenes
(2) ViewFlipper que admite deslizamiento por gestos
Primero necesitamos preparar algunas imágenes: coloque la imagen en Cree dos animaciones en la imagen dibujable: cree una nueva carpeta en res y cree dos xml en ella.
left_in:
android:duration=5000
android:fromXDelta=100%p
android:toXDelta=0/>
left_out:
android:fromXDelta=0
android:toXDelta=-100%p
android:duration=5000/>
Archivo de diseño:
xmlns:tools=/tools
android:layout_width=match_parent
android:layout_height=match_parent
herramientas:context=.
android:id= @+id/flipper
android:layout_width=fill_parent
android:layout_height=fill_parent/>
Una clase principal:
la clase pública MainActivity extiende la actividad {
aleta ViewFlipper privada;
privada int[] resId = {R .pc1,R.drawable.pc2,R.drawable.pc3,R.drawable.pc4};
@Override
protected void onCreate(Bundle saveInstanceState) {
super.onCreate( saveInstanceState);
setContentView(R.layout.activity_main);
flipper = (ViewFlipper) findViewById(R.id.ViewFlipper)flipper);
/*
* Importe dinámicamente ViewFlipper para agregar subvistas
* */
for (int i = 0; i < resId . longitud; i++) {
flipper.addView(getImageView(resId[i]) );
}
/*
* Cancelar el efecto de animación de ViewFlipper
* */
flipper.setInAnimation(this)setInAnimation(this, R.anim.left_in);
flipper.fromXDelta =0
android:toXDelta=-100%p
android:duration=2000/>
right_out:
android:fromXDelta =100%p
android:toXDelta=0
android:duration=2000/>
Luego necesitamos agregar la clase principal (si no No quieres que la imagen se reproduzca automáticamente, pero solo quieres reproducirla mediante gestos, entonces debes agregar "Agregar código de animación para ViewFlipper" a la clase principal.
setOutAnimation(this, R.anim.left_out);
flipper.showPrevious();
}else if (startX - event.getX() > 100) {
flipper.anim.right_in);
flipper.setOutAnimation(this, R.anim.right_out);
flipper.showNext();
}
caso MotionEvent.ACTION_UP:
romper;
}
devolver super.onTouchEvent(evento);
}
De esta forma se completa el sondeo de imágenes que completamos a través de la función ViewFlipper.
Chat interactivo de voz privado en tiempo real de la aplicación Midnight Magic, intercambio anónimo de secretos eróticos