Lua 创建后添加侦听器属性
我正在尝试在创建后将listener属性添加到滑块组件:Lua 创建后添加侦听器属性,lua,slider,components,coronasdk,Lua,Slider,Components,Coronasdk,我正在尝试在创建后将listener属性添加到滑块组件: local function sliderListener( _event ) print(_event.value) end slider = widget.newSlider { top = 30, left = 10, orientation = "vertical", height = 200, value = 10, -- Start slider at 10% (option
local function sliderListener( _event )
print(_event.value)
end
slider = widget.newSlider
{
top = 30,
left = 10,
orientation = "vertical",
height = 200,
value = 10, -- Start slider at 10% (optional)
}
slider.listener = sliderListener
然而。。。它不起作用。这是不可能的还是我使用了错误的语法
提前感谢。不确定该属性在创建时是否必须存在。尝试:
slider = widget.newSlider
{
top = 30,
...
value = 10, -- Start slider at 10% (optional)
listener = sliderListener,
}
如果确实需要在创建后设置处理程序,请改为使用上面的命令,并设置要由sliderListener
使用的委托函数。例如:
local actualListener
function actualListener1(event)
...
end
function actualListener2(event)
...
end
function sliderListener(event)
actualListener(event)
end
... create SliderWidget with listener = sliderListener...
actualListener = actualListener2
您还可以使
sliderListener
成为一个具有\uu调用的表(通过setmetatable(s,{{\uu call=Set.call})
您可以通过两种方式分配滑块侦听器。
slider=widget.newSlider
{
top=30,
左=10,
方向=“垂直”,
高度=200,
值=10,--在10%时启动滑块(可选)
slider.listener=sliderListener
}
或
slider=widget.newSlider
{
top=30,
左=10,
方向=“垂直”,
高度=200,
值=10,--在10%时启动滑块(可选)
}
slider.addEventListener(“touch”,sliderListener)确实有效-关键是我想在创建后删除/添加。老实说,我认为这是不可能的。感谢您的关注。@Oli不可能以这种方式更改它,但我已经更新了一个可能的解决方案。非常感谢-这真的很有帮助。