繁体   English   中英

AIR发布的程序无法显示或无法正常工作

[英]AIR published program does not display or work correctly

我已经完成并发布了Adobe AIR程序,但是安装的程序无法正常运行。 有些对象可以正确加载,而其他对象则不能。

具体来说,我大约有20张图像在Y:459处对齐,因此在将Y值推入数组之前先对其进行循环设置。 然后通过引用它们在数组中的位置来设置x值。 图像全部出现在X轴的位置0。

关于AIR中数组的特殊注意事项,我是否不了解? 该程序的其他问题也可能与数组有关。 有人知道为什么吗?

经过测试,该程序可以在Flash中正常运行,所以我不明白为什么AIR中存在问题。 我已经进行了一些故障排除,并将AIR更新到版本15.0.0.356。

我试图找到某种方法来查看正在运行的程序中的错误消息,以便了解为什么它失败了,但是没有运气。

非常感谢您的建议。

编辑非常感谢您的回复。 第一个屏幕截图是从Flash测试的程序,显示了四个在Y:459排列的图像以及分别设置的不同X位置。 http://i60.tinypic.com/r8f0gw.png

第二张屏幕截图是已发布的已安装程序,该程序显示了在Y:459处排列的四个图像,但它们都在X:0处。 http://i58.tinypic.com/1z58dmv.png

我遍历了一系列加载器,在每个加载器中制作了一个位图,应用了平滑处理,并添加到了动画片段中,以便在将它们推入“ lightImgs”数组之前,可以使用我自己的:Image类调整其大小。 由于它们都必须为Y:459,因此我在循环中完成了此操作,然后在循环外更改了X位置(您可以看到已设置的前四个图像X位置)

lightImgs = new Array ();
        for (var i:int = 0; i < 21; i++){
            trace (i);
            var bmp:Bitmap = Bitmap (lightImages[i].content);
            bmp.smoothing = true;
            var tempMC:MovieClip = new MovieClip ();
            tempMC.addChild (bmp);
            var p:Point = new Point (150, 150);
            var tempImg:Image = new Image (tempMC, p);
            tempMC.x -= tempMC.width/2;
            tempMC.y -= tempMC.height/2;

            lightImgs.push (tempImg);
            tempImg.y = 459;
            addChild (tempImg);
            trace ('x ' + tempImg.x + ' y ' + tempImg.y);
        }

        lightImgs[0].x = 110;
        lightImgs[1].x = 270;
        lightImgs[2].x = 430;
        lightImgs[3].x = 590;

附言:如果这不是“办法”,请原谅,我不是专业人士,我会继续学习。 我很想知道为什么在测试时能奏效,而在发布时却不起作用 谢谢! PPS很抱歉,我没有足够的代表直接发布图片。

数组只是数据列表。 问题将在页面上的位置与您要分配图像的X位置有关。 image.x =? 如果您使用相同的X加载了所有,或者尚未设置X位置。 然后它们将全部堆叠在一起。 另一种可能性是,当您设置X值时,您没有考虑图像的实际宽度。 没有代码示例,很难诊断问题。 另外,除非正在检查错误或记录某些事件,否则无法从正在运行的示例中看到错误。 如果一切都显示在屏幕上,则该应用程序认为一切都在正常运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM