Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 10/09/14, 15:43:38
Array

[xs_avatar]
loadgo loadgo no está en línea
Miembro del foro
 
Fecha de registro: oct 2012
Mensajes: 37
Tu operador: Movistar

Repetir bucle

Buenas tengo un codigo con un contador y le dijo que hasta que el contador llegue a 5000 vaya sumando contador+=1 y que cuando llegue a 5000 cambie un cuadro de posicion y vuelva a empezar, pero el "vuelva a empezar" es lo que no consigo, no consigo que cuando contador sea igual a 0 vuelva a ejecturar el while y el if de nuevo.

Lo he probado con continue pero tampoco.

Alguien sabe como lo podria hacer?

Muchas gracias.

Código:
public class MyActivity extends Activity {

    ImageView img;
    int cordx;
    int cordy;
    int cont=0;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);

        //Inicializamos el objeto ImageView
        img = (ImageView) findViewById(R.id.imageView);

        while(cont<=5000) {
            cont++;

            if (cont >= 4000) {
                //Random para que la imagen cambie de posicion aleatoriamente
                Random random = new Random();
                cordx = random.nextInt(1000);
                cordy = random.nextInt(800);

                RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(150, 150);
                img.setLayoutParams(layoutParams);
                layoutParams.leftMargin = cordx;  //XCOORD
                layoutParams.topMargin = cordy;  //YCOORD
                cont = 0;
               
            }
        }
    }

}
Responder Con Cita


  #2  
Viejo 10/09/14, 17:51:11
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Lo que no se es como ni siquiera tu Activity se llega a mostrar, tienes un ciclo infinito en el onCreate. Si el objetivo es que el While no termine nunca, no veo fallos, pero desde luego ese código en Android lo único que va a hacer es mostrarte una pantalla en negro y a los pocos segundos decirte que la aplicación está colgada y si quieres Esperar o Forzar Cierre.
Responder Con Cita
  #3  
Viejo 10/09/14, 18:15:28
Array

[xs_avatar]
loadgo loadgo no está en línea
Miembro del foro
 
Fecha de registro: oct 2012
Mensajes: 37
Tu operador: Movistar

no doy pie con bola...como podria hacer un bucle que me cambie las coordenadas aproximademente cada 3 o 4 segundos?

He estado mirando tutoriales de Java pero este caso en concreto no lo he visto.

Muchas gracias por tu tiempo y perdona si las preguntas son estupidas
Responder Con Cita
  #4  
Viejo 10/09/14, 18:22:24
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Hay muchas formas, pero así a bote pronto podrías crear un hilo (o un AsyncTask que no termine nunca) y cada 4 segundos haces el cambio (si usas un hilo mediante un Handler, si usas el AsyncTask en el onProgressUpdate).

También puedes usar un CountDownTimer con finalización en 5 horas (no creo que alguien vaya a tener la aplicación abierta más de 5 horas, aunque no se si hay tiempo máximo para el CountDownTimer, pero en la página de Google no menciona nada al respecto) y Tick de 4 segundos, y en el onTick haces el cambio.
Responder Con Cita
  #5  
Viejo 10/09/14, 23:56:46
Array

[xs_avatar]
loadgo loadgo no está en línea
Miembro del foro
 
Fecha de registro: oct 2012
Mensajes: 37
Tu operador: Movistar

Muchas gracias crack por tu paciencia
Responder Con Cita
  #6  
Viejo 12/09/14, 14:37:15
Array

[xs_avatar]
loadgo loadgo no está en línea
Miembro del foro
 
Fecha de registro: oct 2012
Mensajes: 37
Tu operador: Movistar

Perdona por mi ignorancia pero me podrias poner un breve ejemplo por favor, lo intento hacer dentro de una estructura surfaceview pero no hay manera.

Última edición por loadgo Día 12/09/14 a las 19:07:09.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android

Herramientas


Hora actual: 07:00:59 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /