钛窗口打开动画从左到右显示黑屏

时间:2013-09-27 10:51:41

标签: android animation titanium

Titanium SDK:3.1.2平台:Android Titanium Studio:3.1.3。 大家好 我是Titanium的新手,并试图在我的窗口添加一些动画。窗口打开时,它应该从左到右打开。 我用以下代码实现了这一点。 但是有一个问题,在显示动画窗口之前,会出现黑屏。 所以我的问题是: - 1)我该怎么做才能删除黑屏..? 2)单击android后退箭头按钮时,如何从右到左关闭同一窗口...?

//Application Window Component Constructor

var self = Ti.UI.createWindow({
    backgroundColor:'#123',
    navBarHidden:false,
    exitOnClose:true
});

var devWidth = Ti.Platform.displayCaps.platformWidth;

var button = Ti.UI.createButton({title:'Click',width:100,height:50});
button.addEventListener('click', function(e) {
    var detailContainerWindow = Ti.UI.createWindow({
        title: 'View Details',
        navBarHidden: false,
        backgroundColor:'#fff'
    });

    detailContainerWindow.addEventListener('open', function(){
        var anim1 = Ti.UI.createAnimation({
            left: "-" + devWidth,
            duration: 1000
        });
        detailContainerWindow.animate(anim1);
    });

    detailContainerWindow.open();
});

self.add(button);

1 个答案:

答案 0 :(得分:1)

不要在open事件上执行动画,只需在.open方法之后执行。

var anim1 = Ti.UI.createAnimation({
            left: "-" + devWidth,
            duration: 1000
        });
        detailContainerWindow.animate(anim1);

 var button = Ti.UI.createButton({title:'Click',width:100,height:50});

button.addEventListener('click', function(e) {
    var detailContainerWindow = Ti.UI.createWindow({
        title: 'View Details',
        navBarHidden: false,
        backgroundColor:'#fff'
    });

    detailContainerWindow.addEventListener('open', function(){

    });

    detailContainerWindow.open();
    detailContainerWindow.animate(anim1);

});

并用动画关闭那个windoiw你使用winnow的androidback事件。

   var anim2 = Ti.UI.createAnimation({
                left: devWidth,
                duration: 1000
            });

detailContainerWindow.addEventListener('androidback', function(){
              detailContainerWindow.animate(anim2);
        });