Titanio - la animación es v. V. Picada

Así que tengo una imagen que quiero desplegar la página.

En caso de que el usuario haga clic en un botón, la imagen detendrá dicha caída de la página.

He usado el estilo 'completo' de EventListener para ejecutar esto ... y funciona, de una manera. El problema es que la caída es entrecortada, irritante.

¿Existe una forma más eficiente para que el titanio realice algún tipo de animación simple?

Aquí hay un segmento de código:

    ballAnimation = Ti.UI.createAnimation({
            top: ballDown.top + 0.01*heightOfScreen,
            duration: someSpeedHere
        }, function(){
            if (hasBeenPressed){
                return;
            }
            else if (!hasBeenPressed && ballAnimation.top > lowestPointForBall){
                someFunctionHere(); //this isn't part of the problem. 
            } 
        }
    );

    ballAnimation.addEventListener('complete', function(){
        if (hasBeenPressed){
            return;
        }
        else if (!hasBeenPressed && ballAnimation.top > lowestPointForBall){
            someFunctionHere(); //this isn't part of the problem. 
        } else {
            ballAnimation.top = ballAnimation.top + 0.01*heightOfScreen;
            ballDown.animate(ballAnimation);
        } 
    });

    ballDown.animate(ballAnimation);

Respuestas a la pregunta(1)

Su respuesta a la pregunta