使用Titanium构建跨平台应用的深入指南
1. 创建集合对象
在创建集合对象时,虽然可以在控制器中创建,如Alloy.Collections.instance("cars");,但在大多数情况下,若尝试在与要渲染的视图关联的同一控制器中创建集合,往往会失败。这是因为Alloy生成代码的方式,view.xml文件中的所有视图代码会在任何控制器代码之前执行。当执行视图代码时,Alloy会进行之前讨论的事件绑定,由于此时集合对象尚未创建,绑定会失败。
解决方案是在父控制器中创建集合,然后加载不同的子视图来渲染集合。以当前示例为例,index.js文件将创建集合,然后创建一个新的集合 - 视图对来实际渲染表格。
-具体步骤:
1. 将index.xml文件内容复制到新的子视图中。
2. 创建一个新的视图 - 控制器对,将新文件命名为cars以渲染信息。
3. 使用index.js作为整个应用程序的初始化起点。
<!-- index.xml --> <Alloy> <!-- Nothing needed here --> </Alloy>// controllers/index.js /