sencha touch总结

Panel:全部显示
TabPanel:只显示一个组件,tabBar实现切换
布局:盒布局(上下左右…)、Fit(填充满父组件,只有一个子组件)、Card(只显示一个组件)
Carousel 使用Card布局,实现滑动
NavigationView 栈结构,实现页面的前进后退
defaults中可以指定items中子组件的特性:flex,xtype…xtype具有延迟渲染的特性(重要!)
mvc:view conrtoller model
controller: refs:指定页面组件的定位 control:根据refs中的key指定函调函数 回调函数:回调函数可以通过this.get名字来获取refs中指定的组件
自定义组件:
XTemplate模板:Ext.XTemplate apply(data) overwrite(compoent,data)
<tpl for=".">表示遍历数组 <tpl for=属性>表示遍历属性中的数组
<tpl>中嵌套的<tpl>访问上层使用{parent.属性}
“<” 用 &lt; “>”用&gt;
模板内置变量 values当前访问数据对象,parent上层数据对象,xindex当前数据项在数组中的位置,第一项为1,xcount当前数组中的数据条数
自定义组件:Ext.define(类名字,config),自定义组件中得到的方法不能通过Ext.get(id)得到的对象来调用

DataView 显示问题,DataView放在TabPanel里面时需要设置高度才能显示
使用jsonp获取数据:
store:

Ext.require([
    'Ext.data.proxy.JsonP'
    ]);
Ext.define('Jsonp.store.FamilyMembers',{
    extend:'Ext.data.Store',
    config:{
        autoLoad:false,
        model:'Jsonp.model.User',
        proxy:{
            type:'jsonp',
            url:'http://localhost:8080/sencha_jsonp/dataService.action',
            reader:{
                type:'json',
                rootProperty:'data'
            }
        },
        pageSize:30,
        listeners:{
        beforeload:function() {
            console.log("store开始加载数据");
        },
        load:function() {
            console.log("store加载数据");
        }
    }
    },

});

DataView:

Ext.define('Jsonp.view.FamilyMemberData',{
    extend:'Ext.dataview.component.DataItem',
    xtype:'_xt_familyMemberData',
    config:{
        layout:'hbox',
        items:[
            {
                xtype:'panel',
                itemId:'id'
            },
            {
                xtype:'panel',
                itemId:'name'
            }
        ]
    },
    updateRecord:function(record){
        console.log("开始更新记录");
        me = this;
        if (record == null) {
            console.log("数据为空");
            return;
        }
        var id = record.get("id");
        var name = record.get("name");
        me.down("#id").setHtml('id:'+id);
        me.down("#name").setHtml('name:'+name);
        me.callParent(arguments); 
    }
});

DataItem:

Ext.define('Jsonp.view.FamilyMemberDataList',{
    extend:'Ext.dataview.DataView',
    xtype:'_xt_familyMemberDataList',
    config:{
        store:'FamilyMembers',
        defaultType:'_xt_familyMemberData',
        useComponents:true
    }
});

controller:

Ext.define('Jsonp.controller.MainController',{
    extend:'Ext.app.Controller',
    config:{
        refs:{
            MainContainer:'_xt_mainContainer',

        },
        control:{
            MainContainer:{
                show:'mainContainer_onshow'
            }
        }
    },
    mainContainer_onshow:function() {
        var me = this;
console.log("mainContainer初始化");
        var FamilyMembersStore = Ext.getStore('FamilyMembers');
        FamilyMembersStore.load(function(records, operation, success) {
                    }, me);

    }
});

打包编译
在项目文件目录下 命令行
sencha app build production

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Sencha Touch 是第一个专门设计为移动设备开发 web 应用的 JavaScript 框架,它基于 HTML5 和 CSS3 的 web 标准,全面兼容 Android 和 Apple iOS,通过 Sencha Touch 框架用户可以创建非常像移动设备本地应用的 web 应用,它提供了丰富的华丽的控件和强大的功能,包括对触控事件的增强,数据整合等。本文通过对 Sencha Touch 框架的介绍,使读者对该框架有一定的了解,并通过一些代码示例给用户更详细直观的对 Sencha Touch 框架功能的了解。 ExtJS ExtJS 是为 web 开发人员提供的基于 JavaScript 和 web 标准快速构建可以跨浏览器平台运行的强大的 web 应用程序开发框架。它提供了丰富的用户界面组件和完善的文档资源,并且还有一个最重要的优势就是组件的设计简洁而容易扩展。 Ext GWT Ext GWT 是使用 Java 构建富 web 应用的最快,最有效的框架。它提供了运行性能良好的用户界面控件,并且在界面布局管理和全键盘支持方面有更突出的优势。 等等 Ext Core Ext Core 是一个构建跨浏览器运行的动态 web 应用的 JavaScript 库,它提供了 DOM 查询和元素选择的跨浏览器访问 API,它是一个轻量级的,运行性能良好并且很容易使用的 JavaScript 库。 Ext Designer Ext Designer 是一个帮助用户更快的创建桌面应用程序的可视化的界面图形化工具。 Sencha Touch Sencha Touch 是第一个基于 HTML5 的 Mobile web 应用开发框架。 Sencha Animator Sencha Animator 是一个创建基于 WebKit 浏览器和触屏移动设备运行的 CSS3 动画的工具,用户可以通过它创建出令人惊叹的动画,效果一点也不逊色于 Adobe 的动画工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值