我将公开我的情况以及我是如何解决的。
我有一个带有图标的 TabPanel。这些选项卡之一显示项目列表。当您单击一个项目时,您将被带到一个显示其描述的新面板。如果单击后退按钮,则该面板将被销毁并返回到列表。这样你就破坏了现在未使用的“描述”面板。
所以我所做的是创建一个函数来根据单击的项目的索引来实例化描述面板:
function project(i) {
var v;
switch(i) {
case 0:
v = Ext.create( 'Ext.Panel', {
title: 'title',
layout: { type: 'fit' },
id: 'project0',
iconCls: '',
style: '',
html: 'my html'
});
break;
}
return v;
}
现在,在列表的“itemtap”事件中,我有这个:
var lastItem = container.add(project(i));
itemsList.hide(); //hide the List and display only the new Panel in the container
现在,我在标题中有一个按钮可以返回到上一个视图(即列表),这是该按钮的事件“点击”:
container.remove(lastItem, true); //hide and destroy it
itemList.show(); //show the List again
因此,如果我在列表和描述项(面板)之间来回切换,现在没有问题,因为每次单击它们时都会得到一个新实例,同样当我返回时它也会被破坏。
这解决了我的问题。