Удаление слушателя из панели
Можно ли удалить слушателя из Ext.Панель после звонка? У меня есть прослушиватель, который я хочу удалить после первого звонка. Я пробовал много способов удалить слушателя, но он все еще звонит:
registerListeners: function()
{
// this = Ext.Controller
// this.view = Ext.Panel
this.view.on('tap', this.onTap, this, {element: 'body'});
},
unregisterListeners: function(evt, el, o)
{
console.log("Removing Event...");
this.view.el.un('tap', this.onTap, this); // Don't work, on the next tap its still calling
},
onTap: function(evt, el, o)
{
Ext.ControllerManager.get('mycontroller').unregisterListeners();
}
Я действительно запутался?!? : (Есть предложения?
1 ответ:
Да, вы можете установить один параметр в вызове on/addListener.
myButton.on('click', function(){ /* do stuff */ }, this, { single : true }); // In your case: this.view.on('tap', this.onTap, this, {element: 'body', single: true});
Проверьте документы для addListener на http://dev.sencha.com/deploy/touch/docs/?class=Ext.Component