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 to be added to more than one view (->
<CCGLView: 0x61500000d500; frame = (0 0; 568 320); 
gestureRecognizers = <NSArray: 0x6040000c4850>; layer = 
<CAEAGLLayer: 0x603000013840>>) at a time, this was never
 allowed, and is now enforced. Beginning with iOS 9.0 it 
 will be put in the first view it is loaded into.

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

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

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

这里写图片描述

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

这里写图片描述

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

相关文章
|
存储 iOS开发 C++
Xcode与C++之游戏开发:Pong游戏
Xcode与C++之游戏开发:Pong游戏 接下来在前两天游戏骨架的基础上实现一个经典的乒乓球(Pong)游戏。游戏是这样的,一个球在屏幕上移动,玩家控制球拍来击打球。可以说乒乓球游戏是游戏开发者的 “Hello World” 项目。
1383 0
|
6月前
|
jenkins Unix 持续交付
个人记录jenkins编译ios过程 xcode是9.4.1
个人记录jenkins编译ios过程 xcode是9.4.1
92 2
|
6月前
|
Linux 数据安全/隐私保护 iOS开发
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
|
3月前
|
iOS开发 MacOS Perl
解决Xcode运行IOS报错:redefinition of module ‘Firebase‘和could not build module ‘CoreFoundation‘
解决Xcode运行IOS报错:redefinition of module ‘Firebase‘和could not build module ‘CoreFoundation‘
133 4
|
3月前
|
iOS开发 开发者
解决xcode doesn‘t support iphone’s ios 14.6 (18f72)
解决xcode doesn‘t support iphone’s ios 14.6 (18f72)
256 3
|
3月前
|
缓存 iOS开发
如何在Xcode删除某个版本的IOS模拟器
如何在Xcode删除某个版本的IOS模拟器
569 1
|
3月前
|
iOS开发
mac不通过Xcode直接打开IOS模拟器
mac不通过Xcode直接打开IOS模拟器
219 2
|
5月前
|
iOS开发
技术好文:xcode动态图,ios实现动态图,iosgif,暂停和继续播放
技术好文:xcode动态图,ios实现动态图,iosgif,暂停和继续播放
48 1