1.list组件是一个很强大的组件。用于以一览表的形式或者列表的形式展示应用程序中的大量的数据。该组件使用XTemplate模版来显示数据,同时与数据仓库进行绑定。所以当数据仓库中的数据发生变化的时候,List组件会将这个变化反映在页面上。

Ext.DataView.List组件继承自DataView组件。简单的创建一个list:

var myList = Ext.create('Ext.List', {
store : store,
itemTpl: '<div>{lastname}{firstname}</div>'//指定的List组件里面内部使用的XTemplate模版
});

2.在学习list组件之间先去看一个很重要的和它息息相关的XTemplate模版。DataView组件当然也和它息息相关,以后做到数据层肯定会去看的。使用XTemplate模版用来方便的创建面板内的HTML元素与代码,还能够很方便的在脚本中编写一段可以使用数据仓库中数据的HTML代码。直接在javascript中定义XTemplate模版:

var tpl = new Ext.XTemplate(
'<div>', //html代码太长则用‘,’隔开
'{string_value}', //用大括号来设置读入模版之后再进行设置的变量
'</div>'
);
var newHtml = tpl.apply(data);

使用XTemplate模版的apply方法可以将脚本中定义的变量值应用到模版中去,并且会返回一个代表一个赋值之后的HTML代码的变量。

在list的创建中,创建tpl的代码举个例子:

itemTpl: new Ext.XTemplate(
'<div>{name}</div>'
),
store: 'Course_store',
listeners: {
itemtap: function() {
Ext.Msg.alert('!');
}
},

可见定义了一个很简单的html代码段,只是输出name的值而已。list组件的创建需要有store的配合给予数据的支持和配合。当然list的每一行都有它们的事件在那里,可以随时用来监听,如例所示实现了监听点击list item的事件。

3.可以使用<tpl for=".">......</tpl>对数据数组进行遍历,其中使用{#}可以显示数据数组中的编号。还可以用来读取一个对象某个属性值中的数组,用<tpl for='attributeName'>...{x}</tpl>当然是遍历。如果用parent对象则可以访问父对象的属性或者成员,例如 {parent.name}则是访问了父对象的name的属性值;当然,在使用tpl和for的时候,直接{.}就可以遍历数组中的全部变量

sencha touch(7)——list组件的更多相关文章

  1. 【转载】Sencha Touch 提高篇 组件选择器

    免责声明:     本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除.     原文作者:威老     原文地址:http://www.cnblogs.com/weil ...

  2. html5外包—长年承接html5外包业务:《Sencha Touch权威指南》下载

    <Sencha Touch权威指南>内容简介:如何才能全面而透彻地理解和掌握移动应用开发框架Sencha Touch并开发出令人心动的移动应用?<Sencha Touch权威指南&g ...

  3. 【翻译】在Ext JS和Sencha Touch中创建自己定义布局

    原文:Creating Custom Layouts in Ext JS and Sencha Touch 布局系统是Sencha框架中最强大和最独特的一部分.布局会处理应用程序中每个组件的大小和位置 ...

  4. sencha touch 扩展篇之使用sass自定义主题样式 (下)通过css修改官方组件样式以及自定义图标

    上一讲我们讲解了如何使用官方的api来修改主题样式,这讲我们继续讲解sass的样式修改, 编译官方自带的主题包  在生成的项目以及官方sdk的目录下,自带了一些主题sass包,我们也可以通过修改sas ...

  5. sencha touch 入门系列 (九)sencha touch 视图组件简介

    对于一个普通用户来说,你的项目就是一组简单的视图集合,用户直接通过跟视图进行交互来操作你的应用,对于一个开发人员来说,视图是一个项目的入口,虽然大部分时候最有价值的部分是在model层和control ...

  6. sencha touch 组件选择器getCmp和ComponentQuery.query()的效率解析

    昨天无意中在网上看到一篇讲解sencha touch组件选择器的文章,名为 Sencha touch 2通过Ext.ComponentQuery.query查找组件. 里面对组件选择器的效率讲解完全反 ...

  7. sencha touch的开源插件和例子

    写了好久的sencha touch,没想到换工作竟然一年多没有搞了.因为项目的缘故收集了好多的组件,由于懒惰,没有整理,现在想想有点后悔了,再加上如果就这样丢弃,感觉有些遗憾,今天整理了一下放在git ...

  8. jQuery Mobile和Sencha Touch哪个更适合你?

    纯粹的总结一下移动web开发框架,移动web开发框架有jQuery Mobile .Sencha Touch等等,他们都来源于web开发,是成熟的框架,jQuery Mobile出自于jQuery家族 ...

  9. Sencha Touch 手机移动开发框架 HTML5 项目压缩方案;

    Sencha Touch框架生成基本项目目录结构 Index.html/ App.js App.json /touch[sdk]/ /Sencha-touch.js /src Resources/ A ...

随机推荐

  1. Microsoft Deployment Toolkit 2013 Preview Release Now Available

    MDT 2013 provides a common console with comprehensive tools and guidance for every organizational ro ...

  2. android 中文 api (71) —— BluetoothServerSocket[蓝牙]

    前言 本章内容是  android.bluetooth.BluetoothServerSocket,为Android蓝牙部分的章节翻译.服务器通讯套接字,与TCP ServerSocket类似.版本为 ...

  3. Flex中神奇的快速辅助 Ctrl+1

    Adobe Flash Builder 中的快速辅助功能提供基于上下文的辅助,有助于您快速执行任务.通过快速辅助,可以在适用于当前代码段的操作列表中选择一个操作. 要调用快速辅助,请在编辑器的上下文菜 ...

  4. Arrays类学习笔记

    Arrays.asList(arr); 该方法可以把数组变成List集合. String[] arr = {"abc","cc"}; List<Strin ...

  5. Python网络编程——通过指定的端口和协议找到服务名

    1.通过指定的端口和协议找到对应的服务名,采用socket中getservbyprot()函数实现. import socket def find_service_name(): protocolna ...

  6. 什么是CALayer

    一.什么是CALayer * 在iOS系统中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是UIView. * 其实UIView之所以 ...

  7. 计算阶乘并显示_winform (20以后的阶乘溢出)

    编写一个窗体应用程序,计算n的阶乘,显示其结果,同时,将结果显示在一个标签中. 新建窗体应用程序(如下),新建控件label1,label2,label3,textBOX1,button1,butto ...

  8. [Swust OJ 137]--波浪数(hash+波浪数构造)

    题目链接:http://acm.swust.edu.cn/problem/137/ Time limit(ms): 1000 Memory limit(kb): 65535   Description ...

  9. django1.6读书笔记一

    reporter是Article中的一个外键,我们可以有多篇文章指向同一个reporter,然后通过使用article_set.all()就可以返回其所有的headline了,也可以添加条件来筛选. ...

  10. DE1-SOC连接设定

    将电源供应器插上电源接口. 使用白色的USB Type B线材将计算机与DE1-SoC上的USB-Blaster II接口连接.此接口主要负责FPGA配置以及HPS Debug使用. 使用Mini-U ...