Z_Dragon

调试中的一些错误(3)

为什么这么久没有写?!因为问题太特么多了,我一个一个说。

1.cocos2d和uikit嫁接的问题

我的主要问题在于场景跳转,而且我的跳转画面中是sprite和view同在的。objc是单继承,必定是建立两个类,一个继承uiviewcontroller一个继承cclayer,然后用*view指针进行跳转衔接。

2.uiview屏蔽下层事件

通过alpha设置透明度会把uiview的事件也屏蔽,但这个可以用来调试还是很有效果的。先设置uicolor,clearcolor将背景透明。通过cgrectmake设置下层view的有效区域,这时候设置uicolor同时设置透明度,方便调节。这是我自己想出来的馊主意,望梅止渴,但对于我这样的初级设计是够用的,因为我的有效区域没有重叠的情况,哈哈哈哈。

3.关于弹出框

弹出框是我引入uikit的始作俑者,胆识弹出框由于有父窗口的子窗口的问题,所以必须使用弱指针,可以自动内存,不会出现野指针的问题,不然会出现死循环。weak指针是通过arc编译的,那么cocos2d又不支持arc编译。下面进入下一个问题。

4.arc编译在cocos2d中的使用

首先将libs文件删除引用,建立静态库,修改静态库的search paths,再向工程添加的linkbinary,再将cocos2d文件添加到静态库(这里选择libs目录,我傻不愣登的第一次引了个空文件),然后重构。重构中会报错一些初始化问题,这里请把initwith改成initWith。最后编译成功,查看修改内容。这种方法比手动引入arc方便多了,要不然要把自动释放池以及释放的函数自己一个一个去删除,太麻烦了。引入arc是为了解决weak指针的问题,但就算这样改完还是会出现“the current deployment target does not support automated__weak reference”这样的报错,这里将项目target改成5.1就可以了,因为自动释放这事儿是后期的小发明。

5.particlesystem

刚开始接触都是毛病,最后好了。因为我放弃了用plist文件来添加,那是自找麻烦,我最后自己手写输入的,非常钓丝买不起particledesigner,然后一边自己写一边调数值看效果。引入cocos2d builder能简化过程,但我现在习惯编码了,不会用这可视化的东西了,整不明白,拖入scoller之后,就卡机,我都不知道发生了什么。历史遗留问题。

6.战斗场景的问题

我写的算法非常之大白吃,然后加入阵型就坚定了我再算法白吃这条路上的渐行渐远。听小伙伴说要考pat,我打算练一练,进入算法小白吃阶段。这个不算问题,就是算法优化。

7.回来补充一点关于hittest

他这个问题正好和我的问题相反,他是view再button上面,这个bool函数是通过测试区域来判断是否点击的。以后肯定会用上,非常的有效。保留了。还有它继承的是uiview类。

 
评论

© Z_Dragon | Powered by LOFTER