将屏幕移到钛色图像上 javascript

move screen over image in titanium javascript

我需要在这个网站上创建这样的效果,名称为:

Link from the example site

//I need this in javascript

问题是创建的效果是一个包含所有设计的图像。对于 android 和 IOS,我如何移动整个图像并仅显示 javascript 中的部分图像?

既然您已经有了图像列表,那就非常简单了。首先,在 Alloy

中创建一个 imageView
<ImageView id="signature" />

接下来将tss中的所有图片相加,并设置单张图片的速度ms

"#signature": {
    images: ['image1.png','image2.png','image3.png',....],
    duration: 50,
    repeatCount: 1
}

在我的示例中,我将其设置为 50 毫秒。这意味着您每秒有 20 张图像。我还将 repeatCount 设置为 1,这样它就不会重复(0 是默认的并且是无限的)

然后,只要您希望签名 "start" 调用 js 控制器文件中的 start()

$.signature.start();

阅读有关它的docs

我使用

实现了它

index.xml

<Alloy>
<Window class="container">
    <Label id="label" top="80" onClick="doClick">Play Sign</Label>
    <View height="84">
        <ImageView width="255" height="7224" id="sigimage" top="0" image="/testImages/0D8Zt.png"></ImageView>
    </View>
</Window>
</Alloy>

index.tss

".container": {
    backgroundColor:"white"
}
"Label": {
    width: Ti.UI.SIZE,
    height: Ti.UI.SIZE,
    color: "#000"
}

"#label": {
    font: {
        fontSize: 18
    }
}

index.js

var interval = null;
var i=0;

function doClick(e) {
    clearInterval(interval);
    i = 0;
    replay();
}
replay();
function replay(){
    interval = setInterval(function(){
        if(i<86){
            $.sigimage.top = -i*84;
            i++;
            Ti.API.info('i = '+i);
        }else{
            clearInterval(interval);
        }
    },10);
}

$.index.open();

一个小技巧,希望对你有所帮助。 :)