Von Lua documentation
lokalen Status, err = pcall (functionName-)
Die pcall Funktionsaufrufe im geschützten Modus erstes Argument, so dass fängt es irgendwelche Fehler während der Ausführung der Funktion. Wenn keine Fehler vorhanden sind, gibt pcall "true" sowie alle vom Aufruf zurückgegebenen Werte zurück. Andernfalls gibt es false, plus die Fehlermeldung zurück.
Sie können pcall
Funktion Fangfehler verwenden, wenn Bilderzeugungs
local image
local status, err = pcall(function() image = display.newImage('img.png', 100, 100) end)
if status and image then
print('no errors ')
-- no errors
else
print('errors ')
-- function raised an error: take appropriate actions
end
Was ist mehr ich unter Beispiel genutzt network.download
von Corona documentation
local function networkListener(event)
if (event.isError) then
print("Network error - download failed: ", event.response)
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://docs.coronalabs.com/images/simulator/image-mask-base2.png",
"GET",
networkListener,
params,
"helloCopy.png",
system.TemporaryDirectory
)
Danke, das werde ich versuchen! –
Es sieht so aus, als ob der PCALL den Fehler eines fehlenden Bildes nicht abfängt. Wenn die Datei nicht existiert, fängt sie den Fehler nicht auf ... ?? –
Sie haben Recht. Ich habe es repariert. Sollte arbeiten:) – ldurniat