cocos2d-x-2.0 ListView使用

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 04:59 点击:

由于cocos2d-x没有给出例子,所以代码有点长。我都写了注释,应该很容易理解。

ListViewTestLayer.h头文件
[cpp] 
// 
 
//  ListViewTestLayer.h 
 
//  2dxDemo 
 
// 
 
//  Created by Yanghui Liu on 12-6-26. 
 
//  Copyright (c) 2012年 BoyoJoy. All rights reserved. 
 
// 
 
  
 
#ifndef _dxDemo_ListViewTestLayer_h 
 
#define _dxDemo_ListViewTestLayer_h 
 
  
 
#include "cocos2d.h" 
 
#include "CCListView.h" 
 
#include <list.h> 
 
#include <string.h> 
 
  
 
USING_NS_CC; 
 
using namespace cocos2d::extension; 
 
  
 
class ListViewTestLayer : public CCLayer , public CCListViewDelegate { 
 
public: 
 
ListViewTestLayer(); 
 
~ListViewTestLayer(); 
 
virtual bool init(); 
 
LAYER_NODE_FUNC(ListViewTestLayer); 
 
virtual void visit(); 
 
public: 
 
// 继承自CCListViewDelegate所需要实现的方法 
 
virtual void CCListView_numberOfCells(CCListView *listView, CCListViewProtrolData *data); 
 
virtual void CCListView_cellForRow(CCListView *listView, CCListViewProtrolData *data); 
 
virtual void CCListView_didClickCellAtRow(CCListView *listView, CCListViewProtrolData *data); 
 
virtual void CCListView_didScrollToRow(CCListView *listView, CCListViewProtrolData *data); 
 
  
 
private: 
 
//显示list的状态的一个lable 
 
CCLabelTTF *m_InfoLabel; 
 
private: 
 
// 存放的List数据 
 
std::list<std::string> *m_pDataList; 
 
CCListView *m_pListView; 
 
//是否刷新,即reload 
 
bool m_bFresh; 
 
void initData(); 
 
}; 
 
#endif 
cpp的实现:
[cpp] 
// 
 
//  ListViewTestLayer.cpp 
 
//  2dxDemo 
 
// 
 
//  Created by Yanghui Liu on 12-6-26. 
 
//  Copyright (c) 2012年 BoyoJoy. All rights reserved. 
 
// 
 
  
 
#include "ListViewTestLayer.h" 
 
#include "CCListViewCell.h" 
 
  
 
ListViewTestLayer::ListViewTestLayer(){ 
 

 
  
 
ListViewTestLayer::~ListViewTestLayer(){ 
 

 
  
 
void ListViewTestLayer::initData(){ 
 
m_bFresh = true; 
 
CCSize winSize = CCDirector::sharedDirector()->getWinSize(); 
 
m_pDataList = new std::list<std::string>; 
 
for (int i=0; i<15; i++) { 
 
char info[20]; 
 
sprintf(info, "My Cell %d", i); 
 
m_pDataList->push_back(info); 
 

 
// 初始化控件ListView 
 
CCListView *listView = CCListView::viewWithMode(CCListViewModeVertical); 
 
listView->setContentSize(

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • cocos2d-x学习笔记(19)--label 、label atlas
      • cocos2d-x学习笔记(23)--地图的使用3--CCTMXLayer
      • Cocos2d-x学习(一):HelloWorld
      • cocos2dx在xcode下开发,编译到android上(2)
      • cocos2d 设置屏幕默认方向
      • cocos2d-x学习笔记(22)--地图的使用2(TMX) --Z-Order、AnchorPoi
      • Cocos2d-x 2.0 之 Actions “三板斧” 之一
      • cocos2d-x学习笔记(18)--游戏打包(windows平台)
      • cocos2d-x学习笔记(16)--spritesheet(精灵表单)
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1