Titanium 列表显示TableView

效果:

 

Titanium中列表显示需要创建TableView

    var tableView = Ti.UI.createTableView({
        style: Ti.UI.iPhone.TableViewCellSelectionStyle.NONE //TableView样式
    });

TableView的每一个行叫做TableViewRow

设置TableViewRow的hasChild为true便可显示这样的效果:

点击HasChild行进入列表显示画面(图2)需要添加点击事件

    tablerow.addEventListener('click', function()
    {
     //Titanium中自定义一个事件 tablerow.fireEvent(
'hasChildClicked', { operation: 'fieldChild'}); });

捕捉这个事件

view.addEventListener('hasChildClicked', function(e) {
    navGroup.open(tableView);//使用NavigationGroup打开列表显示画面tableView

});

 

然后再列表显示数据

复制代码
    //创建TableViewRow的方法
self.createTableRow = function(i) { var tablerow = Ti.UI.createTableViewRow(); tablerow.height = 50;//行高度 tablerow.setTitle("TableViewRow"+i);//显示名称 return tablerow; }; var rows = [];//存储tableView数据的数组 for (var i = 0; i < 20; i++) { rows.push(self.createTableRow(i)); } tableView.setData(rows); self.add(tableView);
复制代码

 

TableViewRow的属性hasCheck控制该行是否被选中,类似于HTML的Checkbox控件的checked的属性

复制代码
     //每一行增加点击事件,控制其选中状态
tablerow.addEventListener('click', function() { if(tablerow.getHasCheck()){ tablerow.setHasCheck(false); }else{ tablerow.setHasCheck(true); } });
复制代码

 

 

posted on   archie2010  阅读(1413)  评论(2编辑  收藏  举报

编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2011-07-08 OA和KM知识管理的区别
< 2012年7月 >
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 1 2 3 4
5 6 7 8 9 10 11

统计

点击右上角即可分享
微信分享提示