应用中只有一个NavigationView的情况:
// 处理一下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");
ChinaFertilizer.app.getController("MainController").pop(1);
} else {
Ext.Msg.confirm("提示", "您确定要退出应用吗?", function(e) {
if (e == "yes") {
navigator.app.exitApp();
}
}, this);
}
}
在Ext.tab.Panel下有多个NavigationView的情况:
// 处理一下android返回按钮
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
document.addEventListener("backbutton", onBackKeyDown, false);
}
function onBackKeyDown() {
var item = Ext.Viewport.getActiveItem();
var id = item.id;
if (id.indexOf("mainView") != -1) {
var mainview = Ext.Viewport.getActiveItem();
// var mainview = Ext.getCmp('moreView').getActiveItem();
var length = mainview.getActiveItem().getItems().length;
console.log("length = " + length);
if(length > 2){
if(app.viewId == 0){
app.getController("phone.MyAppControllerP").pop(1);
}else if(app.viewId == 1){
app.getController("phone.TodoControllerP").pop(1);
}else if(app.viewId == 2){
app.getController("phone.AppCenterControllerP").pop(1);
}else if(app.viewId ==3){
app.getController("phone.MoreControllerP").pop(1);
}
}else{
if (typeof WL === 'undefined') {
Ext.Msg.confirm("提示", "您确定要退出应用吗?", function(e) {
if (e == "yes") {
navigator.app.exitApp();
}
}, this);
} else {
WL.SimpleDialog.show("提示", "您确定要退出应用吗?", [ {
text : "确定",
handler : function() {
navigator.app.exitApp();
}
}, {
text : "取消",
handler : function() {
}
} ]);
}
}
}else{
if (typeof WL === 'undefined') {
Ext.Msg.confirm("提示", "您确定要退出应用吗?", function(e) {
if (e == "yes") {
navigator.app.exitApp();
}
}, this);
} else {
WL.SimpleDialog.show("提示", "您确定要退出应用吗?", [ {
text : "确定",
handler : function() {
navigator.app.exitApp();
}
}, {
text : "取消",
handler : function() {
}
} ]);
}
}
分享到:
相关推荐
在“sencha touch list demo”中,我们主要关注的是Sencha Touch中的列表(List)组件,这是一个核心且常用的组件,用于展示数据集合。 1. **Sencha Touch 框架概述** Sencha Touch 是一个基于JavaScript的框架,...
4. **触摸事件处理**:优化了触摸事件的处理,使得在触屏设备上操作流畅自然。 5. **布局系统**:灵活的布局系统使得组件可以根据屏幕尺寸自适应,适应不同设备的显示需求。 6. **动画效果**:内置丰富的动画效果...
你可以结合Sencha Touch 的事件系统,监听并处理这些事件,实现更丰富的用户交互。 7. **更新图表**:如果数据发生变化,可以使用FusionCharts的`updateChart()` 方法动态更新图表内容。 通过以上步骤,你就能在...
标题中的"api.zip_sencha _sencha touch api_sencha touch2 api"表明这是一个关于Sencha Touch API的压缩文件集合,可能包含了Sencha Touch和Sencha Touch 2两个版本的API文档。 **Sencha Touch基础知识** Sencha ...
文件名称"touch-2.4.1"很可能包含了Sencha Touch 2.4.1的所有源代码和相关资源,包括文档、示例、库文件等,这对于深入学习和自定义框架非常有用。开发者可以通过解压这个文件,查看源码了解其工作原理,或者利用...
在给定的内容中提到“对于 sencha touch 我也是刚接触的,我觉得这个东西,会成为未来的主流,所以我想学习它!”这反映了作者对 Sencha Touch 的积极态度以及对未来趋势的看法。确实,随着移动互联网的发展,越来越...
Sencha Touch 2是一款专为移动设备设计的前端框架,它允许开发者构建功能丰富的、响应式的Web应用程序,可运行在iOS、Android等多平台。在本教程中,我们将深入探讨Sencha Touch 2中的MVC(Model-View-Controller)...
在Sencha Touch中创建相机组件时,可以利用现有的UI组件如按钮、图像视图等来设计用户界面。用户界面应简洁易用,明确指示用户如何启动相机、拍照以及查看拍摄的照片。 7. **照片处理**: 拍照后,可能需要对照片...
- **触摸事件处理**:框架专门优化了对触摸事件的支持,确保在触摸设备上的操作响应流畅。 - **路由系统**:内置的路由系统允许开发者轻松管理应用的导航和状态。 - **本地存储**:Sencha Touch支持Web Storage和...
Sencha Touch是Sencha公司推出的一款专为移动设备设计的JavaScript框架,它提供了丰富的组件库,包括网格、表单、按钮、导航视图等,用于创建具有触摸友好界面的应用。Sencha Touch的设计理念是提供与原生应用相媲美...
### Sencha Touch 开发指南知识点概述 #### 一、Sencha Touch 概述与特性 - **Sencha Touch**:一款先进的移动应用开发框架,它能够帮助开发者利用HTML5、CSS3以及JavaScript来构建高性能、跨平台的移动Web应用...
在标签"SenchaTouch"中,我们可以挖掘出以下关键知识点: 1. **组件化开发**:Sencha Touch 提供了丰富的UI组件,如按钮、表单、面板、列表等,开发者可以通过组合这些组件快速构建界面。每个组件都有丰富的配置...
尽管在该书出版后不久Sencha Touch 2.0就已经发布,但书中涉及的许多概念和技术依然具有很高的参考价值。通过学习本书,读者可以了解到框架的核心概念、设计理念以及如何构建高效的移动Web应用。 #### 三、Sencha ...
3. **触摸事件支持**:Sencha Touch 优化了对触摸事件的处理,提供了一套完整的手势识别系统,使得在移动设备上的交互体验更加流畅。 4. **响应式设计**:框架内置了适应不同屏幕尺寸和方向的能力,确保应用在各种...
同时,合理使用CSS3硬件加速和优化触摸事件处理也是提升性能的关键。 总的来说,PhoneGap和Sencha Touch 2的结合为移动Web应用开发提供了一种高效且灵活的解决方案。通过它们,开发者可以构建出既具有丰富界面又...
9. **社区支持**:Sencha Touch拥有庞大的开发者社区,提供了丰富的文档、示例代码、教程和问答资源,有助于解决开发过程中的问题。 10. **GPL许可证**:此版本遵循GPLv3开源协议,意味着任何人都可以免费使用、...
其核心特性包括响应式布局、触摸事件处理、组件丰富的UI库等,使得开发人员能够在iOS、Android、BlackBerry等多平台上实现一致的用户体验。 标题中的“最新版”意味着这个开发包包含了Sencha Touch 2.0的所有最新...
该插件旨在从 Android 重新创建 Toast 通知,以便在 Sencha Touch 应用程序中使用。 这个插件允许 Toast 像在 Android 中一样被多次调用,它会排队。 此外,它还允许在 Toast 上使用自定义操作按钮,例如UNDO 。 ...
本文将详细解析"移动端混合开发,sencha_touch+phonegap+android简单架构代码案例",帮助你理解和掌握如何使用Sencha Touch、PhoneGap与Android构建混合应用。 **Sencha Touch** 是一款基于JavaScript的UI框架,...