益之 2012-11-11
使用Sencha Touch开发Html5应用时,在iPhone上还好,因为没有物理返回按钮,所以可以使用NavigationView的Back Button来实现Pop页面,
但是在Android手机上,用户习惯使用Android自带的物理Back Button,但是按下去之后,却是直接退出应用了,因为目前在系统中只有一个Webview Activity。这种情况该如何处理呢:
答案是:使用PhoneGap。
闲话少叙,看例子:
// 处理一下android返回按钮 document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() { document.addEventListener("backbutton", onBackKeyDown, false); } function onBackKeyDown() { var canPop = false; var id = Ext.Viewport.getActiveItem().id; if (id.indexOf("login") != -1) { } else if (id.indexOf("mainview") != -1) { var mainview = Ext.Viewport.getActiveItem(); var length = mainview.getItems().length; if (length > 2) { canPop = true; } } if (canPop) { console.log("canPop"); AppName.app.getController("MainController").pop(1); } else { navigator.app.exitApp(); } }