Sencha touch Sencha Touch-将ActiveItem设置为嵌套列表的顶层
我有一个带有嵌套列表项的选项卡面板。每个嵌套列表都有几个层次。如果向下钻取其中一个嵌套列表,然后单击选项卡面板中的另一项,然后单击返回到该项,则嵌套列表仍然向下钻取,而不是刷新到嵌套列表的顶层 如何使nestedlist在每次返回时都显示顶层而不是向下钻取的层 其他信息 好的,我已经走了一段路了。以下是我现在掌握的代码:Sencha touch Sencha Touch-将ActiveItem设置为嵌套列表的顶层,sencha-touch,Sencha Touch,我有一个带有嵌套列表项的选项卡面板。每个嵌套列表都有几个层次。如果向下钻取其中一个嵌套列表,然后单击选项卡面板中的另一项,然后单击返回到该项,则嵌套列表仍然向下钻取,而不是刷新到嵌套列表的顶层 如何使nestedlist在每次返回时都显示顶层而不是向下钻取的层 其他信息 好的,我已经走了一段路了。以下是我现在掌握的代码: var tabBar = new Ext.TabPanel({ fullscreen: true, id : 'footer',
var tabBar = new Ext.TabPanel({
fullscreen: true,
id : 'footer',
cardSwitchAnimation:false,
listeners: {
cardswitch: {
fn: function() {
Ext.getCmp('footer').getActiveItem().setActiveItem(0);
}
}
},
tabBar: {
dock: 'bottom'
},
items: [/* some nestedlist components */]
});
所以最后一个问题是,每次我切换cardswitch时,我都会看到嵌套列表的“向上钻取/向后钻取”动画向后滑动或向后钻取到顶级项。如何让它只显示顶级项目而不显示此向上钻取/向后滑动动画?当用户向下钻取嵌套列表时,我希望保留向前滑动和向下钻取动画。您可以尝试在setActiveItem方法中将cardSwitchAnimation参数设置为false [UPDATE]取消选择项目 为嵌套列表上的项目点击事件添加事件侦听器
nestedList.on("itemtap", function(nestedlist, index, item, e){setTimeout(function(){nestedlist(index);},500);}, this);
[更新]来自John
由于某种原因,你的代码对我没有任何帮助。但这一次成功了:
var nestedList = new Ext.NestedList({
store: store,
listeners: {
itemtap: function(dv, ix, item, e) {
// Clear the selection soon
setTimeout(function(){dv.deselect(ix);},500);
}
}
});
2014年3月,在版本2.3.1中,我遇到了Ext.dataview.NestedList对象的上述问题。使用“取消选择”方法的建议方法对我不起作用——可能是因为从最初的问题开始已经过去了两年 为了解决问题,我使用了以下方法:
nestedList.goToNode( nestedList.getStore().getRoot() );
是的,那也行。现在我有一个最后的问题,前一个选择的项目仍然是高亮度。如何取消选择()它?我让troubel在正确的对象上找到一个DecelectAll()函数,或者尝试id化记录id,然后为它找到与Decelecte()等价的对象函数。嘿,Tdebaileul,我注意到代码中有一个bug,我不知道如何修复。尽管cardswitch可以工作并将您带回顶层,但“后退”按钮不能正常工作。它有时出现在顶层,而有时,它实际上根本不会返回。当我执行getActiveItem()时,后退按钮的活动似乎失去了同步。有没有关于如何修复的建议?我想如果你开始一个新问题会更好。这会更清楚。完成后请告诉我。好的,新问题发布在这里: