1

私のコード (corona SDK) では、任意の表示オブジェクト「レーザー」に触れるとフェードアウトし、離すと元に戻ります。でも; 関数でonTouch、「開始」トランジション アルファを 0 を超える値ではなく 0 に設定すると、表示オブジェクトは 0 アルファで永久に非表示のままになります。何を与える?コードは次のとおりです (今のところ、かなり近いので alpha = 0.01 を使用しています)。

local function fadeBack(var)
      transition.to(laser, {time = 700, alpha = 1.0});
end

local function onTouch(event)
    if(event.phase == "began")then
    tween = transition.to(laser, {time = 100, alpha = 0});
     elseif(event.phase == "ended") then
    fadeBack();
     end
end
4

2 に答える 2

0

transition.to はオプションで onComplete パラメータをサポートしているため、遷移が完了すると関数を呼び出すことができ、その関数で必要なものをリセットできます。

于 2013-10-28T00:27:11.330 に答える
0

遷移を停止しようとしている場合は、これを使用します。

local trans

local function fadeBack()
    transition.cancel(trans)
end

local function onTouch(event)
    if event.phase == "began" then
        trans = transition.to(laser, {time = 100, alpha = 0})
    elseif event.phase == "ended" then
        fadeBack()
    end
end
于 2013-10-25T08:33:50.510 に答える