每次我在 Xcode 5 中构建时的背景位置交替位置
Posted
技术标签:
【中文标题】每次我在 Xcode 5 中构建时的背景位置交替位置【英文标题】:Background position alternating position every time I build in Xcode 5 【发布时间】:2013-12-22 18:43:52 【问题描述】:我刚开始使用 cocos2D 在 Xcode 5 中编写游戏,发现这很奇怪。我刚开始在菜单场景中使用,并且正在导入背景和按钮。下面的代码有时可以很好地定位我的背景,但有时它会向上调整大约 50 像素(我的模拟器在它的一侧,或者它的长度是水平的,所以从技术上讲,它在“宽度”方向上移动了大约 -50 像素,尽管对于模拟器它向上移动)。
注意我发现每次运行我的程序时,它都会在正确对齐和移动之间交替。为什么会出现这种情况啊!下面是我正在使用的代码。
注意 2 我正在使用 Kobold2D,并且我正在使用的框架有一个 config.lua,这超出了我的理解范围。 config.lua 代码位于这里http://snipt.org/BEt6
-(id) init
if ((self = [super init]))
CCSprite *sprite = [CCSprite spriteWithFile:@"background.png"];
sprite.anchorPoint = CGPointZero;
[self addChild:sprite z:-1];
sprite = [CCSprite spriteWithFile:@"button.png"];
sprite.anchorPoint = CGPointZero;
sprite.position = CGPointMake(200,200);
[self addChild:sprite z:0];
return self;
【问题讨论】:
对我来说没有什么明显的......除了你不应该将anchorPoint设置为零......它通常应该单独留在(0.5,0.5)(图像/精灵的中心)。 虽然(对我来说)为 z 顺序指定 -1 似乎不寻常,但查看根代码,它似乎可以正常工作...... 【参考方案1】:你的代码唯一的问题是你初始化精灵两次,这不是很好。 我认为这是导致您的问题的原因。 试试这个代码:
-(id) init
if ((self = [super init]))
CCSprite *sprite = [CCSprite spriteWithFile:@"background.png"];
sprite.anchorPoint = CGPointZero;
[self addChild:sprite z:-1];
CCSprite *sprite2 = [CCSprite spriteWithFile:@"button.png"];
sprite2.anchorPoint = CGPointZero;
sprite2.position = CGPointMake(200,200);
[self addChild:sprite2 z:0];
return self;
【讨论】:
以上是关于每次我在 Xcode 5 中构建时的背景位置交替位置的主要内容,如果未能解决你的问题,请参考以下文章
我在 android studio 中运行我的颤振项目并尝试使用 iPhone 12 模拟器,但 Xcode 构建每次都失败