Box2d初探

当使用cocos2d来为box2d创建一个world对象的时候。这个world对象管理物理仿真中的所有对象。

body definition, then a body object, then a shape, then a fixture definition, and finally a fixture object

一旦我们已经创建了这个world对象,接下来需要往里面加入一些body对象。body对象可以随意移动,可以是怪物或者飞镖什么的,只要是参与碰撞的游戏对象都要为之创建一个相应的body对象。当然,也可以创建一些静态的body对象,用来表示游戏中的台阶或者墙壁等不可以移动的物体。

cocos2d坐标系

坐标系的分类:

屏幕坐标系:原点在屏幕的左上角,x轴朝右,y轴朝下

GL坐标系:原点在屏幕的左下角,x轴朝右,y轴朝上

分清楚坐标系之后,下面介绍一下坐标系之间的转换。

IOS中UIViewController切换

假设现在存在两个UIViewController,即FirstUIViewController和SecondUIViewController

1
2
3
FirstUIViewController *first = [[[FirstUIViewController alloc] init] autorelease];

SecondUIViewController *second = [[[SecondUIViewController alloc] init] autorelease];

①:存在NavigationController

方法一:运用NavigationController中的pushViewController:animated:消息

FirstUIViewController.m中执行:

1
[self.navigationController pushViewController:second animated:YES];

如果需要返回原来的UIViewController:

1
[self.navigationController popViewControllerAnimated:YES];

MKNetworkOperation的addCompletionHandler消息请求两次问题

刚刚在IOS上面使用访问网络的框架MKNetworkKit,在运用MKNetworkOperation中的addCompletionHandler消息访问网络的时候会出现同一个URL地址访问两次的现象。

出错的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
MKNetworkOperation *operation = [self operationWithPath:path params:params httpMethod:@"GET"];

[operation addCompletionHandler:^(MKNetworkOperation *completedOperation) {
id dict = [completedOperation responseJSON];

if ([completedOperation isCachedResponse]) {

NSLog(@"CompletedOperation cached");

}else {

NSLog(@"CompletedOperation fresh");

}

successBlock(dict);

} errorHandler:^(MKNetworkOperation *completedOperation, NSError *error) {

DLog(@"%@", [error localizedDescription]);

errorBlock(error);

}];

(转)产品设计流程

新的一年到了,分享个大的东西,这个是之前团队总结的一套「产品设计流程」,里面包含了3大模块,产品前期分析,设计环节,上线总结反馈,基本上涵盖了,从需求到上线的经过的流程,相较于大型UED团队会“轻”一些,适合中小型团队。如果所在公司内部还未有设计流程,可以参考此流程,也可以拿去在这个基础上进行改进。

点击阅读「产品设计流程」

以下是文字版本,如果想得到更好的阅读体验,建议还是点上面的网址哟~

设置子DIV位于父亲DIV的低端

一般div进行嵌套编写的时候,子div会默认位于父div的上方

1
2
3
4
<div style="width:200px;height:50px;border: 1px solid red;">
<div style="width:100%; height:30px; border:1px solid blue;">
</div>
</div>

显示效果如下:




先如果要让子div位于父div的低端

方法一:可以用通过设置zidiv的margin属性,但是这个需要写死偏移多少为px,如果是再按照写百分比设置的div显得很不好操作

方法二:设置父div的position为relative,然后设置子div的position为absolute, bottom为0

1
2
3
4
<div style="width:200px;height:50px;border: 1px solid red;position: relative;">
<div style="width:100%; height:30px; border:1px solid blue;position: absolute;bottom: 0">
</div>
</div>

此时就可以看到子div位于父div的底部了




iOS中图片的裁剪

在iOS的开发过程中,我们有的时候只需要取得一张图片的部分内容,如在编写游戏的时候,往往要从一张打的精灵图上面截取一部分我们需要的精灵图片.

原图:

Xcode工程莫名其妙的崩溃

最近搞项目工程,由于上传到git服务器上面,在本地保留了好多的备份工程,备份的工程都是一样的工程名,再经过Xcode反复打开、编译、运行的过程中导致很多莫名其妙的问题, 现象如下:

程序会随机的崩溃,每一次崩溃的地点都是不定的(很奇妙,恼火吧,我也是)

,