back with external .js files

You must Login before you can answer or comment on any questions.

hi all!

i got my app divided in 4 files, app.js, opostos1.js, opostos2.js, opostos3.js.

The app.js file are the menu with buttons to opostos1.js, opostos2.js, opostos3.js.

My question is how can I get back from opostos1.js, opostos2.js, opostos3.js to app.js window ?

I tried to windowOpostos1.close() and it works but I had to click in the back button several times...it's the right way and i'm doing something wrong or there are another way to do this ?

— asked 11 months ago by André Trigo
1 Comment
  • we need some code to see how your actually doing it....

    — commented 11 months ago by Trevor Ward

1 Answer

app.js

var winHome = Titanium.UI.createWindow({
    title:"Home Screen",
    //backgroundColor:"#FFF6A5",
    fullscreen:true,
    backgroundColor:"#EEF1BD",
});
 
winHome.orientationModes = [Ti.UI.LANDSCAPE_RIGHT];
 
 
 
var viewMenu2 = Titanium.UI.createView({
 
 width:"100%",
 height:"100%",
 
 
});
 
var SOpostos = Titanium.UI.createImageView({
 
    image:"images/Menu/SOpostos.png",
    width:301,
    height:271.5,   
    top:338,
    left:530,
    opacity:0,
}); 
 
 
SOpostos.addEventListener('click', clickOpostos);
 
function clickOpostos(){
 
 
     win1 = Titanium.UI.createWindow({
      url:"opostos1.js",
      title:"Opostos",
      backgroundColor:"#EEF1BD",
 
 });
win1.open(); 
    }
 
viewMenu2.add(SOpostos);
winHome.add(viewMenu2);
winHome.open();

opostos1.js

— answered 11 months ago by André Trigo
answer permalink
3 Comments
  • opostos1.js

    var winOpostos1 = Titanium.UI.currentWindow;
     
    var backS = Titanium.UI.createImageView({
     
        image:"images/Menu/backS.png",
        width:53.5,
        height:43.5,
        top:20,
        left:50,
        opacity:0.8,
     
    });
     
    var SemanticaTopo = Titanium.UI.createImageView({
     
        image:"images/Menu/SemanticaTopo.png",
        opacity:0.8,
        top:0,
        left:7,
        width:1024,
        height:768,
     
    });
     
    ////////////////////////////Inicio do Jogo Dia/Noite /////////////////////////////////
     
    var view2 = Titanium.UI.createView({
        width:"100%"
     
     
    });
     
    var ceuDia = Titanium.UI.createImageView ({
        image:"images/opostos/diaNoite/ceu_dia.png",
     
    });
     
    var ceuNoite = Titanium.UI.createImageView ({
        image:"images/opostos/diaNoite/ceu_noite.png",
        opacity:0,
    });
     
    var paisagemDia = Titanium.UI.createImageView ({
        image:"images/opostos/diaNoite/paisagem_dia.png",
     
    });
     
     
    var paisagemNoite = Titanium.UI.createImageView ({
        image:"images/opostos/diaNoite/paisagem_noite.png",
        opacity:0.1,
        width:1024,
        heigth:705,
        top:63,
     
    });
     
     
    var sol = Titanium.UI.createImageView ({
        image:"images/opostos/diaNoite/sol3.png",
        anchorPoint:{x:0 ,y:1},
        top:20,
        width:1024,
        height:768,
    });
     
    var lua = Titanium.UI.createImageView ({
        image:"images/opostos/diaNoite/lua.png",
        height:220,
        top:80,
        left:-400,
    });
     
    var prevX,curX,prevY,curY;
    var dirX;
    var oldX;
    ///////////////
    var t = Titanium.UI.create2DMatrix();
    var t2 = Titanium.UI.create2DMatrix();
    var t3 = Titanium.UI.create2DMatrix();
     
     
    var count = 0;
    var count2 = 0;
    var count3 = 0.1;
    paisagemNoite.addEventListener('touchstart',function(e){ 
        oldX = e.x
     
    });
    paisagemNoite.addEventListener('touchmove',function(e){ 
     
     
        prevX = curX;
        curX = e.x;
     
        if (prevX > curX) {
            dirX = "left";
     
            if ( count2 >= 0 && count2 < 90){
     
                t = t.rotate(-3);
                sol.animate({transform: t, duration: 0});  
                count2-=3;
                ceuNoite.animate({opacity:0, duration:0});
                paisagemNoite.animate({opacity:0.1, duration:0});
            }
     
            else if (count2 >= 90 && count2 <= 123) {
                t2 = t2.translate(-30,0);
                lua.animate({transform:t2, duration:0});
                count2-=3;
                ceuNoite.animate({opacity:count3, duration:0});
                paisagemNoite.animate({opacity:count3, duration:0});
                count3-=0.1;
            }
            Ti.API.info(count2); 
        }
     
        else if(prevX<curX) {
            dirX="right"; 
            if (count2 < 90) {
                count2+=3;
                t = t.rotate(3);
                sol.animate({transform: t, duration: 0}); 
                    Ti.API.info(count2); 
     
            }
            else if (count2 >= 90 && count2 <= 120) {
                count2+=3;
                 count3+=0.1;
                t2 = t2.translate(30,0);
                lua.animate({transform:t2, duration:0});
                ceuNoite.animate({opacity:count3, duration:0});
                paisagemNoite.animate({opacity:count3, duration:0});
                Ti.API.info(count2); 
     
            }
     
     
        }
     
     
     
        else {
            dirX = "none"
     
        }  
        Ti.API.info(dirX);
    });
     
    paisagemNoite.addEventListener('touchend',function(e){ 
        count++;
        Ti.API.info(count2); 
     
        if(count2 >= 120){
     
            alert("Parabens!");
     
            jogoLimpoSujo();
     
            winOpostos1.remove(view2);
     
        }
     
    });
     
    view2.add(ceuDia);
    view2.add(ceuNoite);
    view2.add(sol);
    view2.add(lua);
    view2.add(paisagemDia);
    view2.add(backS);
    view2.add(SemanticaTopo);
    view2.add(paisagemNoite);
     
     
    winOpostos1.add(view2);
     
    SemanticaTopo.addEventListener('click', function(){
     
     
        winOpostos1.close();
     
        Ti.API.info("BACK!!!!");
     
    });
     
    ////////////////////////////Fim do Jogo Dia/Noite /////////////////////////////////
     
     
    ////////////////////////////Inicio do Jogo Limpo/Sujo /////////////////////////////////
     
     
     
    function jogoLimpoSujo(){
     
    var view3 = Titanium.UI.createView({
        width:"100%"
     
     
    });
     
    var limpo = Titanium.UI.createImageView ({
        image:"images/opostos/limpoSujo/camisola_0.png",
     
    });
     
    var sujo1 = Titanium.UI.createImageView ({
        image:"images/opostos/limpoSujo/camisola_1.png",
     
    });
     
    var sujo2 = Titanium.UI.createImageView ({
        image:"images/opostos/limpoSujo/camisola_2.png",
        opacity:0,
    });
     
    var sujo3 = Titanium.UI.createImageView ({
        image:"images/opostos/limpoSujo/camisola_3.png",
        opacity:0,
    });
     
    var countShake = 0;
     
    Ti.Gesture.addEventListener('shake',function(e){ 
        Ti.API.info(countShake);
        if (countShake == 0) {
            sujo1.animate({opacity:0, duration:3000});
            sujo2.animate({opacity:1, duration:3000});
        }
     
        else if (countShake == 1) {
            sujo2.animate({opacity:0, duration:3000});
            sujo3.animate({opacity:1, duration:3000});
        }
     
        else if (countShake == 2) {
     
            var anim = Titanium.UI.createAnimation({
                opacity:0, 
                duration:3000
     
            });
     
            sujo3.animate(anim);
     
            anim.addEventListener('complete', function(){
                JogoMolhadoSeco();
            });
        }
     
        countShake++;
    });
     
     
    view3.add(limpo);
    view3.add(sujo1);
    view3.add(sujo2);
    view3.add(sujo3);
    winOpostos1.add(view3);
     
    }

    — commented 11 months ago by André Trigo

  • opostos1.js (continue)

    ////////////////////////////Inicio do Jogo Limpo/Sujo /////////////////////////////////
     
     
    function JogoMolhadoSeco(){
    var view4 = Titanium.UI.createView({
        width:"100%"
     
     
    });
     
    var carroSeco = Titanium.UI.createImageView ({
        image:"images/opostos/molhadoSeco/carroSeco.png",
     
    });
     
    var nuvensNegras = Titanium.UI.createImageView ({
        image:"images/opostos/molhadoSeco/nuvensNegras.png",
     
    });
     
    var carroMolhado1 = Titanium.UI.createImageView ({
        image:"images/opostos/molhadoSeco/carroMolhado1.png",
     
    });
     
    var carroMolhado2 = Titanium.UI.createImageView ({
        image:"images/opostos/molhadoSeco/carroMolhado2.png",
     
    });
     
    var loaderImage = Titanium.UI.createImageView ({
        width:459,
        height:700,
        top:80,
        left:250,
     
    });
     
    var loaderArrayLength=23;
     
    var loaderIndex=0;
     
    function loadingAnimation( ){
     
        loaderImage.image = "images/opostos/molhadoSeco/chuva/Untitled-100"+ loaderIndex + ".png"
     
        loaderIndex++;
     
        if(loaderIndex===23){loaderIndex=1;}
     
     
    }
     
    var loaderAnimate = setInterval(loadingAnimation,80);
     
    // var label = Titanium.UI.createLabel({
        // text:'',
        // top:150,
    // });
     
    var timer;
    var duration = 0;
     
     
        Ti.Media.startMicrophoneMonitor();
        duration = 0;
        timer = setInterval(showLevels, 100);
     
     
    var d = Titanium.UI.create2DMatrix();
    var avgS = 0;
    function showLevels() {
        var peak = Ti.Media.peakMicrophonePower;
        var avg = Ti.Media.averageMicrophonePower;
     
        duration++;
        //label.text = "duration "+ duration+" secon\npeak power: " + peak+ "\navg power: " + avg;
        if (peak >= 0.8) {
        d = d.translate(avg*50,0);
        nuvensNegras.animate({transform:d, duration:0});
        loaderImage.animate({transform:d, duration:0});
        avgS+=avg*50;
        if (avgS > 150) carroMolhado1.animate({opacity:0, duration:2000});
        if (avgS > 300) carroMolhado2.animate({opacity:0, duration:2000});
        Ti.API.info(avgS);
     
        if(avgS >= 800){
     
            alert("parabens!");
     
            winOpostos1.close();
        }
     
        }
    }
     
    view4.add(carroSeco);
    view4.add(carroMolhado1);
    view4.add(carroMolhado2);
    view4.add(loaderImage);
    view4.add(nuvensNegras);
    //view4.add(label);
    winOpostos1.add(view4);
    }

    — commented 11 months ago by André Trigo

  • ok, when I click semantica topo it will not return to app.js in the first click, but if I click more 2/3/4/5 times it goes...

    — commented 11 months ago by André Trigo

Your Answer

Think you can help? Login to answer this question!