Sencha Touch нажмите на панель с закрепленной панелью инструментов - PullRequest
0 голосов
/ 07 ноября 2011

Я хочу создать Ext.Panel с закрепленной нижней панелью инструментов, которая содержит одну кнопку.И тогда я хочу иметь два разных обработчика для нажатия на корпус панели и кнопки на панели инструментов.Но теперь у меня есть обработчик для нажатия на панель, и кажется, что этот обработчик обрабатывает каждое нажатие на панель и панель инструментов этой панели.Можете ли вы помочь мне исправить это.Вот мой код:

var infoButton = new Ext.Button({
  ui: 'round-small',
  border: 0,
  iconCls: 'info',
  style: "background: transparent;",
  iconMask: true,
  handler: handlerTapInfo
});

var infoToolbar = new Ext.Toolbar({
  border: 0,
  ui: config.ui || 'light',
  dock: 'bottom',
  style: 'background: transparent;',
  items: [{xtype: 'spacer'}, infoButton]
}); 

var pic1Panel = new Ext.Panel({
    id: '1',
    flex: 1,
    listeners:{
        afterrender: function(c){
            c.el.on('click', function(){
                 handlerTapOnPanel();
           });
        }
    },
    dockedItems: [infoToolbar]
 });

1 Ответ

0 голосов
/ 16 мая 2012

Если вы поместите все элементы панели в контейнер и добавите прослушиватель в этот контейнер, это, вероятно, решит проблему.

Если нет, то вы можете остановить распространение события с помощью e.stopEvent.или верните false (по крайней мере, в Sencha Touch 2.0), но вам нужно проверить порядок, в котором регистрируются события (я думаю, панель должна быть последней)

...