我正在使用display.loadRemoteImage从远程位置获取许多图像。
一切正常,但是如果我点击一个按钮转换到另一个场景,而1个(中)图像仍在加载,则图像会显示在另一个场景上。
我不希望这种情况发生。
我怎么能:
干杯
答案 0 :(得分:0)
display.loadRemoteImage()不返回可用于取消下载的ID,如网络。*函数。这个API调用只是围绕network.request的一种方便的方法。 Corona Labs最近将display.loadRemoteImage()的代码发布到此处的文档中:
http://docs.coronalabs.com/api/library/display/loadRemoteImage.html
您可以接受该代码并进行修改,以便取消通话。
答案 1 :(得分:0)
我认为你从loadRemoteImage加载的图像分组问题。
此api将直接在场景中加载图像并位于视图前方。一旦你从内存中切换或删除场景,它仍然会保持在视野中。
你应该使用network.download。它可以选择将下载的图像插入场景组,您可以编辑,删除或操作下载的图像。
在networkListener中,您可以在场景组中插入myImage: 这是代码块:
local function networkListener( event )
if ( event.isError ) then
print( "Network error - download failed" )
elseif ( event.phase == "began" ) then
print( "Progress Phase: began" )
elseif ( event.phase == "ended" ) then
print( "displaying response image file" )
myImage = display.newImage( event.response.filename, event.response.baseDirectory, 60, 40 )
myImage.alpha = 0
transition.to( myImage, { alpha = 1.0 } )
end
end
local params = {}
params.progress = true
network.download(
"http://www.coronalabs.com/demo/hello.png",
"GET",
networkListener,
params,
"helloCopy.png",
system.TemporaryDirectory
)
答案 2 :(得分:0)
您可以禁用从网络加载图像的下一个场景按钮,也可以取消下载网络。