`
RandyWei
  • 浏览: 67003 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Sencha Touch 1.1培训教程第三章:Sencha Touch第一个例子

 
阅读更多

Sencha Touch 1.1培训教程第三章:Sencha Touch第一个例子


作者:廖 章     编辑整理:刚 子     来自:移动Web开发社区 


发环境的搭建与调试工具


Sencha Touch的开发环境搭建相当简单,在Eclipse中创建一个Web项目,定好项目的目录结构后,引入Sencha Touch的类库。 


Sencha Touch的调试工具,我主要是使用google的chrome浏览器(最新版本是chrome15.0.87),下载地址:http://www.google.cn/Chrome


关于该浏览器及其调试的使用方法可参考:http://www.google.com/support/chrome/bin/static.py?page=guide.cs&guide=29302&hl=cn&printable=1


 


第一个例子



按我们的通用平台架构,视图层使用了Freemarker模板,因此前台页面一般分为ftl文件和js文件。根据Sencha  Touch的特点以及我自己的思考,一个模块一般只需用一个ftl文件,然后在这个文件引入所需用的自定义的js文件(通用的组件js文件,可以考虑放入到freemarker模板中)。

以下就是第一个例子的ftl(stFirstExample.ftl)文件内容:

<@c2.touch title=""  cssList=[] jsList=['example/stFirstExample.js']>

</@c2.touch>

 

cssList是用来引入自定义的css3样式文件,jsList是用来引入所需的js文件。


jsstFirstExample.js)文件内容: 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//创建第一个示例的命名空间
Ext.ns('example', 'example.views');
 
//通过Ext.setup方法来参加一个sencha touch应用页面,setup方法里可以配置很多属性
Ext.setup({
    statusBarStyle: 'light',
 
    onReady: function() {
                //工具栏-toolbar
                var funBar = {
                        xtype: 'toolbar',
                            title: 'ST 第一个例子',
                            dock: 'top', //工具栏放置的位置(必须的属性):top-上,bottom-下,left-左,right-右
                            scroll: 'horizontal',
                            height: 30,
                            items: [{
                        xtype: 'button',
                            text: '桌面',
                                ui: 'back',
                    //iconMask: true,
                        //iconCls: 'home',
                        style: btStyle,
                        handler: function(){                   
                            window.location = prefix + '/index.action';
                        }
                }]
                };
 
                //主界面
                var viewport = new Ext.Panel({
                    fullscreen: true,
            monitorOrientation: true,
                    dockedItems: [funBar],
                    items: [{
                        html: 'hello kitty......'
                    }]
            });
            }
    });

可以看到,stFirstExample.js 的第一行代码创建了两个命名空间:example和example.views。 
第二行代码调用了 Ext.setup() 方法,用以建立一个触控设备的 Web 页面,该方法可以为我们的应用设置不同的启动属性和行为:



  • icon,设置该应用默认的图标; 
  • tabletStartupScreen,该属性设置在平板电脑上的启动图标; 
  • phoneStartupScreen,该属性设置在智能手机上的启动图标; 
  • glossOnIcon,该属性设置是否在默认图标上呈现光环效果; 
  • onReady,该方法会在页面加载完毕,浏览器中的 DOM 模型已经建立完成时被调用。由于为了保证程序在运行时所依赖的 JavaScript 文件都已经加载完毕,我们一般将应用启动的逻辑置于该方法内,类似于 Java 程序的 main 方法。

在onReady方法中,有一个地方我们需用注意的: 


  • Ext.Panel对象的dockedItems属性,通过它可以在panel中放置工具栏等组件,可选值有:top-上,bottom-下,left-左,right-右。fullscreen属性为true(默认为false)则强制该panel充满整个屏幕。monitorOrientation属性为true则可以让panel面板监听屏幕方向发生变化时候的事件。
  • dockedItems属性里的对象,必须由docked属性,用以指定放置的位置。 

当然js文件也可以通过另外一种方式创建应用: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//通过Application来创建一个应用
var FirstApp = new Ext.Application({
    name: 'firstApp',
useLoadMask: true,
 
    launch: function () {
        //工具栏-toolbar
        var funBar = {
            xtype: 'toolbar',
            title: 'ST 第一个例子',
            dock: 'top', //工具栏放置的位置(必须的属性):top-上,bottom-下,left-左,right-右
            scroll: 'horizontal',
            height: 30,
            items: [{
            xtype: 'button',
                text: '桌面',
                ui: 'back',
                //iconMask: true,
                //iconCls: 'home',
                style: btStyle,
                handler: function(){                   
                    window.location = prefix + '/index.action';
                }
            }]
        };
 
        //主界面
        var viewport = new Ext.Panel({
            fullscreen: true,
monitorOrientation: true,
            dockedItems: [funBar],
            items: [{
                html: 'hello kitty......'
            }]
        });
    }
});


Ext.Application实例的初始化,意味者一个sencha touch应用的建立,这个类的实例化后,会自动创建一个全局的变量FirstApp,并且同时建立了如下的命名空间: 


firstApp

firstApp.views

firstApp.stores

firstApp.models

firstApp.controllers

而launch的方法只会运行一次。

 



在 2012年01月10日 11:39 被 刚子 最后编辑
 

分享到:
评论

相关推荐

    Sencha Touch 2入门教程之MVC例子程序源代码

    在本教程中,我们将深入探讨Sencha Touch 2中的MVC(Model-View-Controller)模式,并通过一个具体的登录界面例子来理解其工作原理。 MVC模式是软件设计中的经典架构,它将应用程序分为三个核心部分:模型(Model)...

    sencha touch 1.1 panel-list分页实现

    自己基本测试了下可用,不过没有放入总条数之类的,长度有限,他的原理就是可以动态修改传递的start 以及 limit,如果有其他参数请在 store里面放入baseParams 参数如: , baseParams : { sort : 'foodprice ...

    touch-docs-2.2.1.zip(senchaTouch 离线API参考文档)

    3. **快速入门指南**:针对初学者的教程,引导他们快速上手Sencha Touch的开发环境和基本操作。 4. **用户手册**:全面介绍Sencha Touch的架构、工作原理以及最佳实践。 将这个文档部署到Tomcat的webAPP目录下,...

    一个完整的sencha touch 应用案例

    这个压缩包文件包含了创建一个完整的Sencha Touch 应用所需的基本元素,让我们逐一解析这些文件及其背后的含义。 1. **index.html**:这是应用程序的主入口文件,通常包含HTML结构以及Sencha Touch库和其他资源的...

    Sencha 和 Sencha Touch 简介

    Sencha Touch 是第一个专门设计为移动设备开发 web 应用的 JavaScript 框架,它基于 HTML5 和 CSS3 的 web 标准,全面兼容 Android 和 Apple iOS,通过 Sencha Touch 框架用户可以创建非常像移动设备本地应用的 web ...

    sencha touch 登陆界面

    Sencha Touch 是一款专为移动设备设计的JavaScript框架,它提供了丰富的组件库和强大的数据管理功能,用于构建高性能的触控应用。"sencha touch 登陆界面"这个主题,主要涉及的是如何使用Sencha Touch来设计和实现一...

    移动Web应用开发技术讲解-Sencha Touch 1.1

    移动Web应用,简单来理解就是针对移动终端优化过的Web 站点,终端用户通过支持Html5、Css3、Javascript标准的Webkit内核浏览器访问部署在服务器的Web应用。

    sencha touch项目源码

    这个项目源码是基于Sencha Touch开发的一个实例,通过研究这个项目,我们可以深入理解Sencha Touch的工作原理和实际应用。 在开始分析源码之前,先了解一些Sencha Touch的基础知识: 1. **组件系统**:Sencha ...

    Sencha Touch开发的项目《般若人生》源码

    Sencha Touch是一个流行的JavaScript框架,专门用于构建跨平台的触屏友好型Web应用程序。它提供了丰富的UI组件和强大的数据管理工具,使得开发者能够创建功能强大且具有原生应用体验的移动Web应用。 在深入探讨...

    Sencha Touch2环境搭建

    Sencha Touch 2是一款专为移动设备开发的前端框架,用于构建高性能的触控应用程序。它提供了丰富的组件库,使得开发者能够轻松创建出与原生应用相似的用户体验。本篇文章将详细阐述如何搭建Sencha Touch 2的开发环境...

    sencha touch list demo

    在“sencha touch list demo”中,我们主要关注的是Sencha Touch中的列表(List)组件,这是一个核心且常用的组件,用于展示数据集合。 1. **Sencha Touch 框架概述** Sencha Touch 是一个基于JavaScript的框架,...

    sencha touch 2.4.0最新版

    Sencha Touch 2.4.0 是一个专为移动设备设计的前端JavaScript框架,它使得开发者能够构建功能丰富的、响应式的Web应用程序,这些应用在智能手机、平板电脑等移动设备上表现得如同原生应用一样流畅。这个框架由Sencha...

    sencha touch中文翻译文档

    这个"Sencha Touch中文翻译文档"是针对Sencha Touch 2(ST2)的详细教程和指南,旨在帮助中国开发者更轻松地理解和运用这一框架。 在入门基础部分,文档可能涵盖了以下内容: 1. **安装与设置**:如何下载Sencha ...

    sencha touch在VScode上的插件

    Sencha Touch 是一款用于构建移动应用的前端框架,它提供了丰富的组件库和强大的数据管理功能,使得开发者可以创建交互性强、性能优异的触屏应用程序。VSCode(Visual Studio Code)是微软开发的一款广受欢迎的源...

    senchaTouch和fusioncharts结合的实例

    Sencha Touch 是一个流行的JavaScript框架,专门用于构建触摸优化的移动Web应用程序,而FusionCharts则是一款强大的数据可视化工具,提供丰富的图表类型和交互效果。 在深入探讨这个实例之前,我们首先来了解这两个...

    sencha touch sdk工具

    Sencha Touch是一个强大的JavaScript库,它提供了丰富的UI组件和API,使得开发者可以创建与原生应用相媲美的交互体验。SDK工具则进一步扩展了这个框架的功能,为开发、调试和打包应用提供了便利。 首先,我们来详细...

Global site tag (gtag.js) - Google Analytics