CCTableView定位到指定行
来源:互联网 发布:上海师范大学网络教育 编辑:程序博客网 时间:2024/04/30 11:35
Cocos2d-x提供了CCTableView类,用于创建列表,那么如何定位到列表指定的行呢;
CCTableView继承自CCScrollView,打开CCScrollView会发现有个setContentOffset方法;
该方法即用于设定列表的位置。参数offset指定列表停放的位置,animated如果为true则以MoveTo滚动的方式延迟到达指定offset,如果为false,则直接setPostion到offset;
如果在初始化的时候使用setContentOffset定位到列表某行,则需将setContentOffset放在reloadData()之后;
那么问题来了,如何定位offset呢?引擎没有提供相应的接口,我们只能自己计算(这里只计算offsety,offsetx=0):
/* viewHeight:可视区域的高度 cellHeight:单个cell的高度 cellCount:cell的总数 cellCountShown:可视区域可显示的cell的数量 cellIndex:需要指定的cell的索引,从0开始计数 locationindex:需要将cellIndex放到可视区域的第几个,从1开始 */float calculateTableCellOffsetByCellIdx(float viewHeight, float cellHeight, int cellCount, int cellCountShown, int cellIndex, int locationindex) { float tableTotalHeight = cellHeight * cellCount; if(tableTotalHeight > viewHeight) { return 0.00 - (cellCount - (cellIndex + cellCountShown - locationindex + 1)) * cellHeight; } else{ return viewHeight - tableTotalHeight; }}如果我们有一个有15个元素的TableView,一屏可以显示5个,我们要将第3个元素定位到第二行的位置,那么我们可以这样计算offsety:
float offsety = calculateTableCellOffsetByCellIdx(TableView->getViewSize().height, cellSize.height, 15, 5, 3, 2);TableView->setContentOffset( ccp(0, offsety), false);注意:
1、获取TableView的ViewSize而不是Contentsize;
2、setContentsizeOffset必须在reloadData()之后调用;
0 0
- CCTableView定位到指定行
- CCTableView滚动到指定的行
- Myeclipse中快速定位到指定行
- RecyclerView定位到指定位置
- SWTableView(CCTableView)移动列表项到指定索引对应的cell
- java JTextArea 定位到指定行 选中某一行
- java JTextArea 定位到指定行 选中某一行
- myeclipse / eclipse 怎么定位到代码指定行
- C# ListView定位并滚动到指定行
- 页面load时,定位到指定位置
- 刷新窗体后,定位到指定记录
- Ext 树如何定位到指定节点
- 打开文件夹并定位到指定文件
- Android BaiduMap 定位到指定坐标
- 定位ListView到指定的某一个条目
- Listview如何定位到指定位置
- swiper 定位到指定页面或位置
- Android ListView 滑动到指定item 定位 指定位置
- fsck详解
- 关于ecshop调用地图的总结
- 从头认识C—指针函数
- three.js 源码注释(三十二)Scenes/FogExp2.js
- struts2+ajax+json实现用户登录
- CCTableView定位到指定行
- 利用XAMPP本地搭建WordPress博客
- java enum的使用
- pc-lint使用
- android webview js alert对话框 不能弹出 解决办法
- AIX用裸设备给表空间添加数据文件
- Collections.unmodifiableList方法的使用与场景
- Pascal's Triangle II
- The Python Tutorial 5——Data Structures