Cocos2D游戏项目CCTableView在Xcode7.2下的无法滚动问题

前端之家收集整理的这篇文章主要介绍了Cocos2D游戏项目CCTableView在Xcode7.2下的无法滚动问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)


一个RPG游戏转换到Xcode7.2下发现一个问题,原来可以上下滚动的CCTableView控件现在不可以滚动了.

控制台中可以看到输出的警告:

WARNING: A Gesture recognizer (<CCTapDownGestureRecognizer: 0x611000042e40; baseClass =
 UIGestureRecognizer; state = Possible; view = <CCGLView 
<CCTableView 0x616000030380>)>>) was setup in a storyboard/xib @H_502_20@to be added @H_502_20@to more than one view (->
<CCGLView: 0x61500000d500; frame = (0 0; 568 320); 
gestureRecognizers = <NSArray: 0x6040000c4850>; layer = 
<CAEAGLLayer: 0x603000013840>>) at a @H_502_20@time,this was never
 allowed,and is now enforced. Beginning with iOS 9.0 it 
 will be @H_502_20@put in the first view it is loaded into.

貌似在iOS 9.x后原来可以在多个view中添加的手势识别器只能在第一个视图中起作用了,估计是CCTableView中使用了这个特性.

深入Cocos2D代码修改,目前还没有这个精力,遂采用变通方法,在CCTableView旁边加入一个滚动条来实现滚动效果.

有2种添加滚动条的方法,你可以在SpriteBuilder中的添加:

你也可以在代码中手动添加,后者的自由度更高些,本猫采用后一种方法,实现效果如下:

而原来在iOS 9之前的系统中,滚动是有效的,所以可以根据系统自动显示或隐藏滚动条以实现最佳效果.

原文链接:https://www.f2er.com/cocos2dx/340517.html

猜你在找的Cocos2d-x相关文章