• 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); } });
    by archie
  • 相关阅读:
    Win7+Centos7双系统安装/树莓派安装Centos7
    C++学习笔记
    Ubuntu Codeblocks配置Eigen Sophus
    Java笔记
    解决Mac下AndroidStudio内容时卡顿
    解决Android RadioGroup跑到输入法上面
    Activity去掉标题不成功的解决方法
    Synergy屏幕共享键鼠 (for Mac&Ubuntu)
    Android 限制控件多次点击
    Bitmap 创建、转换、圆角、设置透明度
  • 原文地址:https://www.cnblogs.com/archie2010/p/2581850.html
Copyright © 2020-2023  润新知