摘要:
最近在弄一个棋牌游戏的项目,出于跨平台考虑,决定使用cocos2d-x HTML5来开发。遇到一些小陷阱,留个记号。1. 颜色的生成:cc.Color4B(255, 255, 0, 255)2. 坐标的生成:cc.Point(300,300)或者cc.p(300, 300)3. cc.Layer默认为忽略锚点(Anchor point),需要设置ignoreAnchorPointForPosition函数。这是一个坑,在cc.Node里的注释写着:1 The default value is false, while in CCLayer and CCScene are true刚开始使用cc 阅读全文
摘要:
cocoa专门为视图和窗口动画提供了一个NSAnimation的子类:NSViewAnimation。通过设置属性字典就可以对窗口进行大小、位置、显示隐藏等动画。 1 //使用NSViewAnimation 2 - (IBAction)didViewAnimateClicked:(id)sender { 3 //获取当前窗口大小 4 NSRect firstFrame = [[NSApp mainWindow] frame]; 5 6 //属性字典 7 NSMutableDictionary *dict = [NSMutableDictionary d... 阅读全文
摘要:
Cocoa中可以通过NSAnimation可以实现自定义动画。NSAnimation本身并没有任何的操作UI的能力,但是它能够提供类似NSTimer的定时功能,不过更加强大,通过设置progress mark可以设置多个触发点。对于需要平滑动作的,更是可以通过继承NSAnimation,在重写一些方法后能提供精确到帧的动画。需要注意的是,NSAnimation默认的动画执行模式为阻塞执行,需要等待动画执行完才会返回,可以通过setAnimationBlockingMode:进行设置。1. 通过代理获取触发点,执行动画操作。跳跃性执行,需要设置较多的触发点。 1 - (IBAction)didA 阅读全文
摘要:
在Cocoa中动态添加和删除菜单非常简单,NSApp通过mainMenu管理主菜单,提供了删除和插入菜单项的功能。直接上代码:- (IBAction)deleteFile:(id)sender {// [[NSApp mainMenu] removeItem:_fileMenuItem]; [[NSApp mainMenu] removeItemAtIndex:1];}- (IBAction)showFile:(id)sender {// [[NSApp mainMenu] addItem:_fileMenuItem]; [[NSApp mainMenu] insert... 阅读全文