Moai SDK を使う
 All Files Functions Variables Pages
画面のスライドイン

概要

指定したレイヤーをスライドインさせることができます。

使い方

現在表示しているレイヤーでスライドアウトさせたいレイヤーを登録後、スライドインの開始を支持します。

スライドインのサンプル (lib/sample/slide.lua)

--! \example
--! \brief スライドイン効果の動作サンプル
package.path = "../lib/?.lua"
_G.Path_to_lib = "../lib"
require("strict")
require("Gui")
require("Coroutine")
Gui:open_window("slide", Gui.landscape)
-- 左側のレイヤー
local left_layer = Layer:new()
Gui.layers:push_front(left_layer)
local left_label = Image_label:new("rect.png", 128, 128)
left_layer:insert(left_label)
-- 右側のレイヤー
local right_layer = Layer:new()
Gui.layers:push_front(right_layer)
local right_label = Image_label:new("circle.png", 128, 128)
right_layer:insert(right_label)
local function delay(second)
local timer = Timer:new()
while timer:elapsed() < second do
coroutine.yield()
end
end
-- 2つのレイヤーを用いて、左右のスライドインを繰り返させる
local update = function()
while true do
Gui.screen:set_slide_out_layers({ left_layer })
Gui.screen:slide_in({ right_layer },
1.0, Gui.slide_in.from_left)
delay(1.5)
Gui.screen:set_slide_out_layers({ right_layer })
Gui.screen:slide_in({ left_layer },
1.0, Gui.slide_in.from_right)
delay(1.5)
end
end
Coroutine:new(update)

スライドインについての詳しい説明は Screen_effector.lua から確認できます。