sencha如果不做設定,是一個framework頁面,當點擊瀏覽器返回或者Android的返回鍵的時候會跳出頁面或整個程式
所以需要實現route路徑
網上麼有特別詳細的說明,研究了很久分享一個
首先,需要在main的地方開始就加入曆史路徑。在app.js
launch: function() {
//增加曆史路徑,設定main為home
this.getApplication().getHistory().add(Ext.create('Ext.app.Action', {
url: 'home'
}));
//初始化main
Ext.create('MBAPeople.view.Main', {fullscreen:true});
}
其次,在controller中定義route事件
routes: {
'home': 'homejump',
'changepass':'changejump'
},
home 是名字,後面的是方法
changejump:function(){
var form = this.getChangepassword();
Ext.Viewport.setActiveItem(form)
},
homejump:function(){
var form = this.getMainview();
Ext.Viewport.setActiveItem(form)
},
然後,就在相應button的事件中調用
在點擊changepassword按鈕中寫入不是setActiveitem,而是history
onBtnTap:function(){
this.getApplication().getHistory().add(Ext.create('Ext.app.Action', {
url: 'changepass'
}));
}
而在返回按鍵可以直接使用 history.back();
handler: function() {
history.back();
}
這樣,在我們初始化main的時候,大家會發現首頁地址為localhost/app/#home,而跳轉頁面地址為localhost/app/#changepass,成為了兩個頁面,自然可以實現返回按鈕