2014-02-23 54 views
0

我正在使用display.loadRemoteImage從遠程位置獲取多個圖像。corona loadRemoteImage在另一個場景中加載

所有的工作都很好,但是如果我點擊一個按鈕來轉換到另一個場景,同時還有一個(許多)圖像仍在加載,那麼圖像會顯示在另一個場景中。

我不希望發生這種情況。

如何我:

  1. 取消loadRemoteImage前gotoScene
  2. 刪除不屬於該場景中的新場景中的所有元素 。我做由於loadRemoteImage加入到一個 display.newGroup()

乾杯

不 有一個ID

回答

0

的display.loadRemoteImage()不返回一個可用於取消一個ID像網絡一樣下載*功能。這個API調用只是一個圍繞network.request的簡便方法。科羅納實驗室近日發佈了display.loadRemoteImage()的代碼這裏的文檔:

http://docs.coronalabs.com/api/library/display/loadRemoteImage.html

你可以把這些代碼並修改它,所以你可以取消呼叫。

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 
     ) 
0

要麼你可以禁用下一個場景按鈕,從網絡上加載圖像,也可以取消下載網絡..

相關問題