位置: 编程技术 - 正文

cocos2dx tableview基础:实现多图片的滑动显示

编辑:rootadmin

推荐整理分享cocos2dx tableview基础:实现多图片的滑动显示,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

通过tableview实现滑动显示个字母图片,点击图片执行相应的动作。

tableview 需要继承TableViewDataSource(数据源),TableViewDelegate(触屏事件处理),同时实现其虚函数。

代码如下:

头文件TableViewTest.h如下:

#ifndef __macstudycocos2dx__TableViewTest__

#define __macstudycocos2dx__TableViewTest__

#include <stdio.h>

#include "cocos2d.h"

#include "extensions/cocos-ext.h"

USING_NS_CC;

USING_NS_CC_EXT;

//void runTableViewTest();

class TableViewTest:publiccocos2d::Layer,publiccocos2d::extension::TableViewDataSource,publiccocos2d::extension::TableViewDelegate

{

public:

staticcocos2d::Scene* createScene();

virtualbool init();

void toExtensionMainLayer(cocos2d::Ref *sender);

CREATE_FUNC(TableViewTest);

virtualvoid scrollViewDidScroll(cocos2d::extension::ScrollView* view){};

//重写滑动事件

virtualvoid scrollViewDidZoom(cocos2d::extension::ScrollView* view){};

//重写缩放事件

//以下重写TableViewDataSource的虚函数

virtualvoid tableCellTouched(cocos2d::extension::TableView* table,cocos2d::extension::TableViewCell* cell);

//定义单元触碰事件

virtualSize tableCellSizeForIndex(TableView *table,ssize_t idx);

//定义单元的大小

virtualTableViewCell* tableCellAtIndex(cocos2d::extension::TableView* table,ssize_t idx);

//定义单元&#;

virtualssize_t numberOfCellsInTableView(cocos2d::extension::TableView* table);

//定义单元&#;数量

};

#endif /* defined(__macstudycocos2dx__TableViewTest__) */

TableViewTest.cpp如下:

#include "TableViewTest.h"

Scene* TableViewTest::createScene()

{

// 'scene' is an autorelease object

auto scene =Scene::create();

// 'layer' is an autorelease object

auto layer =TableViewTest::create();

// add layer as a child to scene

scene->addChild(layer);

cocos2dx tableview基础:实现多图片的滑动显示

// return the scene

return scene;

}

bool TableViewTest::init(){

if (!Layer::init()) {

return false;

}

Size winSize=Director::getInstance()->getWinSize();

TableView* tableView=TableView::create(this,Size(,));

tableView->setDirection(ScrollView::Direction::HORIZONTAL);

tableView->setPosition(Vec2(,winSize.height/2-));

tableView->setDelegate(this);

this->addChild(tableView);

tableView->reloadData();

return true;

}

void TableViewTest::tableCellTouched(cocos2d::extension::TableView* table,TableViewCell* cell){

log("cell touched at index:%ld",cell->getIdx());

}

SizeTableViewTest::tableCellSizeForIndex(cocos2d::extension::TableView* table,ssize_t idx){

returnSize(,);

}

TableViewCell* TableViewTest::tableCellAtIndex(cocos2d::extension::TableView* table,ssize_t idx){

auto letindex=idx&#;1;

auto string=String::createWithFormat("let%ld.png",letindex);

TableViewCell *cell=table->cellAtIndex(idx);

if (!cell) {

cell=newTableViewCell();

cell->autorelease();

auto sprite=Sprite::create(string->getCString());

sprite->setAnchorPoint(Vec2::ZERO);

sprite->setPosition(Vec2(0,0));

cell->addChild(sprite);

auto label=Label::createWithSystemFont(string->getCString(),"arial",);

label->setPosition(Vec2::ZERO);

label->setAnchorPoint(Vec2::ZERO);

label->setTag();

cell->addChild(label);

}

else{

auto label=(Label*)cell->getChildByTag();

label->setString(string->getCString());

}

return cell;

}

ssize_tTableViewTest::numberOfCellsInTableView(cocos2d::extension::TableView *table){

return;

}

最好实现的效果如下:

cocos2dx3.2 android平台APK打包 前一篇文章已经说明了如何使用eclipse调试程序,今天就来简单说明下如果打包成apk打包方法很简单,我这里分为有两种方法一:使用eclipse打包当你的程

Cocos2dx------从json文件读取数据 ReadJson.h文件代码#ifndef__Read_Json_H__#define__Read_Json_H__#includecocos2d.h#includearrayUSING_NS_CC;usingnamespacestd;classLayoutInfo:publicCCObject{public:intNum;intValue;};classReadJson{publ

cocos2dx3.6动作编辑器 在这个公司实习挺久的了,在这个公司开始的时候没什么任务,就是自己学习学习,然后到了论文答辩完的时候就有了东西,一上来就是一个动作编辑

标签: cocos2dx tableview基础:实现多图片的滑动显示

本文链接地址:https://www.jiuchutong.com/biancheng/368784.html 转载请保留说明!

上一篇:新手学cocos2dx,centos7下的安装过程(新手学做ppt)

下一篇:cocos2dx3.2 android平台APK打包

  • 会计新手如何学会收款流程
  • 增值税存量和增量留抵退税
  • 待转销项税额是几级科目
  • 为什么盈利要利润亏损要扣除所得税
  • 农民合作社交哪些税
  • 现金流量怎么影响股票价值
  • 免征的附加税是什么
  • 合伙企业对外长期股权投资收到分红 怎么处理
  • 公司购车预计净残值率怎么计算
  • 季度报税是哪个税种
  • 建筑行业异地预缴
  • 外汇汇率在其中扮演什么角色?
  • 税收优惠政策2020年
  • 研发失败的项目可以加计扣除吗
  • 其他应付款如何做账
  • 房地产企业已预缴增值税如何抵扣
  • 单位预算支出包括哪些
  • 办公家具折旧年限及计算方法
  • 发生坏账时的会计处理
  • PHP:session_cache_limiter()的用法_Session函数
  • atikdag.sys
  • 前端大屏适配几寸显示器
  • php面向对象编程
  • 园林绿化企业设立的条件和程序
  • 赔偿金和违约金有什么区别
  • 计提本月固定资产折旧,其中车间折旧额1100
  • 物业费开增值税专用发票
  • 总分类账的登记依据和方法取决于企业所采用的
  • 本季度企业所得税
  • 基于web的购物网站
  • 基训包括哪些
  • 水利基金忘记申报怎么查
  • 进项税额转出可以为负数吗
  • 支付股息如何做账
  • 印花税如何记账入账
  • 应交增值税是应收账款吗
  • 房屋租赁需要计提印花税吗
  • 代收电费增值税品目
  • 研发支出的账务怎么处理
  • 记账凭证基本内容口诀
  • 季度所得税申报表营业收入怎么填
  • mysql数据库压力测试工具
  • 怎么做掉公司账面库存100万
  • 企业固定资产可以不提折旧吗
  • 房屋如何计提折旧费
  • 社保补缴收滞纳金吗
  • 短期借款不超过几年
  • 基本账户可以转私人账户吗
  • 银行存款付款是借方还是贷方
  • 项目估算主要包括
  • 新公司怎样
  • 如何设置物资采集系统
  • 关闭terminal monitor
  • win7如何连接网络电脑连接网络
  • 如何修改windows注册表
  • winxp系统用户不见了
  • win平板装ubuntu
  • 明日之后白树高地怎么钓凤尾鱼
  • win8系统可以装win7系统吗
  • WARNING: /tmp: File system full, swap space limit exceeded的解决办法
  • win7如何设置鼠标
  • centos怎么打开软件
  • windows10稳定版本
  • win7系统如何屏幕放满屏幕
  • win10切换登陆账户为administrator
  • 简述android多线程编程的实现方式
  • 11月编程语言排行榜出炉
  • 又拍云cdn配置
  • python计算两个数乘积代码
  • NGUI之UIRoot
  • js面向对象的原理
  • javascript toggle
  • Javascript字符串对象函数
  • 风力发电,光伏发电还有哪些
  • 个体工商户定期定额核定
  • 城市垃圾处理费会计分录
  • 国家税务总局监控的重点税源纳税人的标准是
  • 普洱房产管理局官网
  • 预到船舶是什么
  • 营改增后如何纳税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设