当前位置:K88软件开发文章中心编程语言APP编程CrossApp → 文章内容

CATableView(表单视图)

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-23 13:51:56

由 ?﹏???ζ???﹏﹏? 创建, 最后一次修改 2016-08-31 类说明 CATableView 主要用于生成列表,在table中展示数据,是一个一维的表,可以让用户能通过分层的数据进行导航,表可以是静态的或者动态的,可通过 dataSource 协议和 delegate 协议可以实现很多的个性化定制,即便拥有大量数据也非常有效率。CATableView只能有一列数据(cell),且只支持纵向滑动。我们先了解一下CATableView的界面构成,CATableView主要是由两级目录构成Selection级和Cell级。如图所示,一个CATableView包含一个或多个Selection,一个Selection包含一个或多个Cell,这样就构成了CATableVIew的层级表示图。CATableView的使用方法和CAListView比较类似,我们也要分别使用:CATableView、CATableViewCell、CATableViewDelegate、CATableViewDataSource来构建。CATableView是表格视图的容器,是容器的载体。CATableViewCell是表格视图的一个单元(本节后面简称cell)。CATableViewDelegate是交互代理,响应cell选中和取消状态。CATableViewDataSource是数据代理,设置Selection个数及Selection包含cell个数。CATableView 属性(点击查看方法介绍)属性说明TableViewDataSource添加数据代理TableViewDelegate添加交互代理TableHeaderView添加头部视图TableFooterView添加尾部视图SeparatorColor设置cell分割线的颜色TableHeaderHeight设置头部的高度TableFooterHeight设置尾部的高度SeparatorViewHeight设置cell分割线的高度AllowsSelection是否开启cell选择AllowsMultipleSelection是否可以多选cellAlwaysTopSectionHeader设置cell顶部的标题AlwaysBottomSectionFooter设置cell底部的标题CATableView 方法(点击查看方法介绍)方法说明setAllowsSelection是否开启cell选择setAllowsMultipleSelection是否可以多选cellsetSelectRowAtIndexPath设置选中cell时调用setUnSelectRowAtIndexPath设置取消选中cell时调用setShowsScrollIndicators设置显示滚动条getNumberOfSections获取tableview包含的section个数getNumberOfRowsInSection获取对应的section所包含的cell个数getSectionHeightInSection通过索引获取section高度getSectionHeaderHeightInSection通过索引获取section顶部的高度getSectionFooterHeightInSection通过索引获取section底部的高度getRowHeightInSectionInRow通过索引cell高度获取section和cellcreateWithFrame创建,并指定其Frame,默认Frame为(0,0,0,0)createWithCenter创建,并指定其Center,默认Center为(0,0,0,0)dequeueReusableCellWithIdentifier可以重用单元标示符cellForRowAtIndexPath通过索引cell获取Index路径switchPCMode开关PC模式ccTouchBegan触摸事件开始时的回调函数ccTouchMoved触摸事件中触点移动时的回调函数ccTouchEnded触摸事件结束时的回调函数ccTouchCancelled触摸非正常结束时的回调函数。(例如:电话或锁屏)mouseMoved鼠标移动mouseMovedOutSide鼠标移出init初始化reloadData重载数据CATableViewCell 属性(点击查看方法介绍)属性说明ContentView内容视图BackgroundView背景视图ReuseIdentifier重用标识符SectionsectionRowcellControlStateEffect控制状态AllowsSelected允许选择CATableViewCell 方法(点击查看方法介绍)方法说明create创建,默认Frame为(0,0,0,0)initWithReuseIdentifier重用标识符初始化CATableViewDelegate 方法(点击查看方法介绍)方法说明tableViewDidSelectRowAtIndexPath选中cell时调用tableViewDidDeselectRowAtIndexPath取消选择cell时调用CATableViewDataSource 方法(点击查看方法介绍)方法说明tableCellAtIndex获取指定celltableViewHeightForRowAtIndexPath获取指定的cell高度numberOfRowsInSection获取对应的section所包含的cell个数numberOfSections获取section个数tableViewSectionViewForHeaderInSection在tableView中通过索引获取头部SectiontableViewHeightForHeaderInSection在tableView中通过索引获取头部Section高度tableViewSectionViewForFooterInSection在tableView中通过索引获取尾部SectiontableViewHeightForFooterInSection在tableView中通过索引获取尾部Section高度tableViewWillDisplayCellAtIndex回调当前将要显示的tableView我们本节也使用CATableView来实现一个简单的表单视图,首先我们需要新建一个Class,命名为:MyTableViewCell并继承CATableViewCell。代码示例如下:文件CATableViewCell.h#ifndef _My_TableViewCell_h_#define _My_TableViewCell_h_#include <iostream>#include "CrossApp.h"USING_NS_CC;class MyTableViewCell:public CATableViewCell{public: MyTableViewCell(); virtual ~MyTableViewCell(); //创建MyTableViewCell static MyTableViewCell* create(const std::string& identifier, const DRect& _rect = DRectZero); public: //初始化 void initWithCell(); //按钮的回调函数 void cellBtnCallback(CAControl* btn, DPoint point);protected: //正常状态下调用 virtual void normalTableViewCell(); //高亮状态下调用 virtual void highlightedTableViewCell(); //选择状态下调用 virtual void selectedTableViewCell(); //禁用状态下调用 virtual void disabledTableViewCell(); //恢复状态下调用 virtual void recoveryTableViewCell();};#endif文件CATableViewCell.cpp#include "MyTableViewCell.h"MyTableViewCell::MyTableViewCell(){}MyTableViewCell::~MyTableViewCell(){}MyTableViewCell* MyTableViewCell::create(const std::string& identifier, const DRect& _rect){ //创建 MyTableViewCell* tableViewCell = new MyTableViewCell(); if(tableViewCell&&tableViewCell->initWithReuseIdentifier(identifier)) { tableViewCell->setFrame(_rect); tableViewCell->autorelease(); return tableViewCell; } CC_SAFE_DELETE(tableViewCell); return NULL;}void MyTableViewCell::initWithCell(){ //Cell的大

[1] [2] [3] [4] [5]  下一页


CATableView(表单视图)