加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocos2dx学习笔记

发布时间:2020-12-14 19:54:07 所属栏目:百科 来源:网络整理
导读:1.(cocos版本,2.x)用到CCTableView的时候,发现每次reloadData以后,原来浏览的位置会回到第一行(第一列),使用一个函数就可以了float slideY = tableView-getContentOffset().y; tableView-reloadData(); tableView()-setContentOffset(ccp(0,slideY))


1.(cocos版本,2.x)用到CCTableView的时候,发现每次reloadData以后,原来浏览的位置会回到第一行(第一列),使用一个函数就可以了float slideY = tableView->getContentOffset().y;
tableView->reloadData();
tableView()->setContentOffset(ccp(0,slideY));

这是垂直方向的处理方式,如果tableview是水平方向的话,在reloadData之前先记录offset的x应该就可以了。


2.(coco版本,3.3),在2D项目中,需要用到“透视”效果,目前了解到的几种两种方案。一、通过OrbitCamera进行旋转,参数angleX设置成90或者-90的时候可以“上下翻页”,设置成0的话可以左右翻页。二、通过setRotation3D进行旋转。其实还可以通过创建一个lookAt矩阵进行变换,不过有点麻烦。

旋转后有一个很严重的问题,就是如果被旋转的面板上有按钮,而你需要判断按钮是否被按到,就需要判断它的位置和大小。这时候按钮显示的位置已经变了,大小也变了,但是实际上通过getPosition和getContentSize获得的数据跟显示的不一样。。。目前还不知道怎么解决这个位置问题。希望有人帮帮我。。。


3.(cocos+lua),lua调用string.find的时候如果想要查找".",那么需要string.find("******","%.")

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读