Шукати в цьому блозі

Робота з мережею

Даний приклад завантажує картинку з мережі і виводить її на екран.
-----------------------------------------------------------------------------------------
--
--вивести текст
local info = TextField.new(nil, "Завантаження...")
info:setPosition(10, 10)
stage:addChild(info)

--завантажити урл
local loader = UrlLoader.new("http://simartinfo.blogspot.com/image.png")

--дадати слухачі подій
loader:addEventListener(Event.COMPLETE, onComplete)
loader:addEventListener(Event.ERROR, onError)
loader:addEventListener(Event.PROGRESS, onProgress)


-функція при завершенні завантаження
local function onComplete(event)
info:setText("готово")

--зберегти завантажену картинку
local out = io.open("|D|image.png", "wb")
out:write(event.data)
out:close()
--вивести картинку на екран
local b = Bitmap.new(Texture.new("|D|image.png"))
b:setAnchorPoint(0.5, 0.5)
b:setPosition(160, 240)
stage:addChild(b)
end

local function onError()
info:setText("помилка")
end

--вивести скільки байт завантажено
local function onProgress(event)
info:setText("завантажено: " .. event.bytesLoaded .. " з " .. event.bytesTotal)
end
------------------------------------------------------------
Також як зображення можна завантажити сторінку html або xml
----------------------------------------------------------------------------------------

local loader = UrlLoader.new("http://xml.weather.yahoo.com/forecastrss/USCA0987.xml")
--------------------------------------------------------------
І розпарсити її витягти потрібні дані регулярними виразами або парсером DOM (в LUA - патерни замість регулярок)

 Ось спрощена бібліотека 'DOM' для LUA - LOM 
Детально про патернах 

Немає коментарів:

Дописати коментар