У меня есть этот контроллер:
Ext.define('MyApp.controller.Test', {
extend: 'Ext.app.Controller',
config: {
},
refs: [
{
ref: 'first',
selector: '#first'
},
{
ref: 'second',
selector: '#second'
}
],
views : [
'TestMain',
'TestSecond'
],
init: function() {
this.getTestMainView().create();
this.control({
'#first': {
tap: function() {
//how do I go to second view here?
}
},
'#second': {
tap: function() {
}
}
});
}
});
и эти 2 вида:
Ext.define('MyApp.view.TestMain', {
extend: 'Ext.Container',
xtype: 'testmain',
config: {
fullscreen: true,
layout: 'vbox',
scrollable: true,
items: [
{
xtype: 'button',
ui: 'normal',
id: 'first',
text: 'Go To Second Screen',
handler: function() {
//how do I go to second view here?
}
}
]
}
});
...
Ext.define('MyApp.view.TestSecond', {
extend: 'Ext.Container',
xtype: 'testsecond',
config: {
fullscreen: true,
layout: 'vbox',
scrollable: true,
items: [
{
xtype: 'button',
ui: 'normal',
id: 'second',
text: 'Go To First Screen',
handler: function() {
}
}
]
}
});
Я бы хотел, чтобы второе представление загружалось, когда я нажимаю на первую кнопку, и наоборот, когда я нажимаю на вторую кнопку. Кажется, я могу добавить код либо в обработчик кнопок, либо в секцию управления - я был бы признателен за пример обоих (если они не совпадают) и, возможно, объяснение того, какой метод лучше всего и почему.
Обратите внимание: я НЕ хочу использовать макет карты или вкладку - я хочу знать, как переключиться с одного автономного представления на другое (в моем приложении у меня есть панель карты и вкладка, и мне нужно переключаться между обеими группами используя кнопки)
Спасибо!!