AppCelerator视图隐藏动画



我试图将动画集成在一个模块中,当单击"解散"按钮时,整个pendingTaskSbar视图的高度转到0DP,但以300ms的范围。这是我到目前为止尝试的。有人可以在这里帮我吗?

function hidePendingTasksBar(){
    log.trace("[tasks]  >>  [hidePendingTasksBar]");
    var animationObj = Ti.UI.createAnimation({
        height : "0dp",
        duration : 300
    });
    $.pendingTasksBar.animate(animationObj);
    //.pendingTasksBar.height = "0dp";
}

高度属性必须是一个数字,并且您使用的是字符串。我认为这是问题。尝试使用0而不是" 0dp"。

http://docs.appcelerator.com/platform/latest/#!/pi/titanium.ui.animation-property-height

将高度设置为0,因为数字应起作用。如果它不起作用,那么您可以安全地使用矩阵变换来降低高度或再次将其增加到相同的高度:

var matrix = Ti.UI.create2DMatrix();
matrix = matrix.scale(1, 0);
// to decrease height
$.pendingTasksBar.animate({
    duration : 300,
    transform : matrix
});

// to reset height
$.pendingTasksBar.animate({
    duration : 300,
    transform : Ti.UI.create2DMatrix()   // use empty matrix & it will reset original matrix or UI.
});

最新更新