2012-10-19 160 views
3

有没有什么办法可以防止导航视图的导航栏中的默认后退按钮行为?防止导航视图后退按钮

我正在尝试使用Sencha Touch 2的历史记录和链接能力与路由器,但这需要我本质上拦截所有按钮水龙头,以便我可以更新网址。

导航栏中的后退按钮可以创建所有类型的噩梦,并且如果有人认为他们有替代解决方案,我可以提供代码,但防止默认后退按钮行为似乎最好(以便播放漂亮与浏览器后退按钮)

回答

3

如果你想处理后退按钮,你可以使用navigation view当导航视图的后退按钮被窃听其解雇back event ..请参阅my previous answer关于如何做到这一点。

如果你只想完全隐藏后退按钮只需使用:

Ext.select('.x-button-back').hide(); 
+0

我听。返回事件,主要是为了更改URL。然后,我拦截路由器以防止它返回两次(更改url会激发路由器,因此您将返回两次)。 – andyjv

+0

拦截工作的方式是通过比较网址哈希与预期视图的xtype。如果它们匹配,则我们跳过push(),因为后退按钮可以自行完成。 问题是如果您使用浏览器后退按钮,url被更改,并且它与前面的视图相匹配,则会跳过推送,因为我们假定sencha后退按钮正在处理推送,因此它不起作用。 – andyjv

0

试试这个Ext.getCmp( 'navigationview的id')getNavigatorBar()隐藏()