如何完全重置导航视图堆栈,然后推送视图?
我的应用中有两个主要用户流:注册和目录。 在注册过程中,我想在具有典型导航视图动画过渡的视图之间进行动画处理,但隐藏了导航栏。目录是相同的,条形图显示。
当注册转换到目录时,我希望从堆栈中删除注册视图,以便显示导航栏而不显示后退按钮。
到目前为止,我已尝试使用过
navigationView.pop();
和navigationView.reset();
如下所述:Sencha Touch Ext.navigation.View pop to root,后跟``navigationView.push(newView);
但是这会导致视图被弹出,但不知何故仍然存在于堆栈中。使用Ext.Function.defer
延迟我的推送调用也不起作用。
我现在尝试了多种视图层次结构组合,以实现从注册到目录的转换,但似乎没有任何效果。在重置后调用controller.getItems()
时,项目仍然存在。是什么给了什么?
这是我当前的视图层次结构:
Ext.define('MobileWebApp.view.Launch', {
extend: 'Ext.Container',
xtype: 'launch',
id: 'launch',
config: {
layout: 'vbox',
baseCls: 'launch',
items: [{
xtype: 'container',
id: 'header',
layout: 'hbox',
height: '40px',
items: [{
xtype: 'button',
ui: 'plain',
baseCls: 'logo',
width: '110px',
height: '25px'
}]
},
{
id: 'mainNav',
xtype: 'navigationview',
navigationBar: {
ui: 'neutral',
hidden: true
},
flex: 1
}
]
}
});
答案 0 :(得分:0)
我最终创建了第三个主导航视图,该视图从注册导航转换到目录导航。