2014-02-05 3 views
0

Класс заголовка не будет скрывать или показывать, как он говорит в документах sencha. Я инициализирую его так:Заголовок не скрывает и не показывает

{ 
    xtype: 'titlebar', 
    docked: 'top', 
    hidden: true 
}; 

Так что он начинается с скрытого. Когда я установил hidden: false, он появится. У меня есть ссылка на кнопку, где при нажатии кнопки она либо отображается, либо скрывается.

bar.show() и bar.hide() не работает. Также нет bar.setHidden(true) или bar.setHidden(false). Также нет bar.hidden = true или bar.hidden = false. Обработчик событий в моей кнопке работает, я печатаю сообщение, когда оно нажато.

Какая альтернатива, чтобы получить заголовок, чтобы исчезнуть и снова появиться?

UPDATE

Ниже приведен код для моего объекта и кнопки слушателя. Вот ссылка на весь файл класса: http://pastebin.com/tbS35Czk

Мой settingsbar (это определено в другом классе здесь: http://pastebin.com/xP5NSrb8)

var settingsbar = { 
       xtype: 'meterreadings_settingsbar', 
       docked: 'top', 
       added: false 
       }; 

Вот кнопка и слушателем:

{ 
    xtype: 'mbButton', 
    text: 'Settings', 
    align: 'right', 
    listeners: { 
     tap: function(source, e, eOpts) { 
      if(!settingsbar.added){ 
       settingsbar.added = true; 
       Ext.ComponentQuery.query('.meterreadings_main')[0].add(settingsbar); 
      } 
      else{ 
       if(settingsbar.hidden){ 
        settingsbar.show(); 
       } 
       else{ 
        settingsbar.hide(); 
       } 

      } 
     } 
    } 
} 
+0

Можете ли вы показать больше кода? Методы 'show' и' hide' должны работать так, как вы хотите: https://fiddle.sencha.com/#fiddle/3cb – Akatum

+0

@Akatum yes Я обновляю свой вопрос всего за минуту. – Graham

ответ

0

Решила проблему. Вместо того чтобы делать

var settingsbar = { 
       xtype: 'meterreadings_settingsbar', 
       docked: 'top', 
       added: false 
       }; 

мне нужно сделать

var settingsbar = Ext.create('pw.meterreadings.main.settingsbar.Settingsbar',{ 
       docked: 'top', 
       added: false 
       }); 

Разница заключается в том, я использую Ext.create вместо xtype.

Смежные вопросы