有什么方法可以覆盖 Titanium 中 Widget 元素的单击事件侦听器?
我有一个小部件,在我使用该小部件的控制器中,我需要在点击元素时执行一些其他操作,而不是在小部件中定义的。
有没有办法让它发生?
TIA :)
要覆盖给定的函数,我将在小部件中导出一个 setter 函数:
像往常一样构建 Widget :widget.xml:
<Alloy>
<Button onClick="doClick" title="Hello World!" />
</Alloy>
导出一个 setter 函数$.overrideListener
,以便能够clickHandler
从小部件widget.js的外部覆盖:
function doDefaultStuff(e){
//Do default stuff
}
var clickHandler = doDefaultStuff
function doClick(e){
clickHandler(e)
}
$.overrideListener = function(callback){
clickHandler = callback
}
索引.xml:
<Alloy>
<Window>
<Widget id="widget_id" src="com.widget.somewidget"></Widget>
</Window>
</Alloy>
clickHandler
如果您希望执行与默认行为index.js不同的操作,请覆盖:
function doCustomStuff(e){
//Do Custom Stuff
}
$.widget_id.overrideListener(doCustomStuff)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句