HudLayer没有出现在我的iOS游戏中
来自第一次海报的问候; 我发现这个网站很多时候都很有用,但现在有一个问题我无法解决,我最近用cocos2d制作了一个iOS游戏,这个游戏的场景由游戏层和hudlayer组成,现在,hudlayer显示在所有iphone型号的xcode模拟器中,但当我在设备上试用时,它只在iphone 4中工作。例如,在5s中,它不会显示,而包含游戏的游戏层可以工作。因此,当我打开游戏时,我看到的只是我的角色的关卡,而不是移动它的操纵台,也不是应该显示在HUD图层中的ecc分数,这是我在场景中实现它的方式 标题:HudLayer没有出现在我的iOS游戏中,ios,objective-c,iphone,cocos2d-iphone,Ios,Objective C,Iphone,Cocos2d Iphone,来自第一次海报的问候; 我发现这个网站很多时候都很有用,但现在有一个问题我无法解决,我最近用cocos2d制作了一个iOS游戏,这个游戏的场景由游戏层和hudlayer组成,现在,hudlayer显示在所有iphone型号的xcode模拟器中,但当我在设备上试用时,它只在iphone 4中工作。例如,在5s中,它不会显示,而包含游戏的游戏层可以工作。因此,当我打开游戏时,我看到的只是我的角色的关卡,而不是移动它的操纵台,也不是应该显示在HUD图层中的ecc分数,这是我在场景中实现它的方式 标题:
@interface GameScene : CCScene
{
}
@property(nonatomic,weak)GameLayer *gameLayer;
@property(nonatomic,weak)HudLayer *hudLayer;
@end
在.m.中的实施:
@implementation GameScene
-(id)init {
if ((self = [super init])) {
_gameLayer = [GameLayer node];
[self addChild:_gameLayer z:0];
_hudLayer = [HudLayer node];
[self addChild:_hudLayer z:1];
_hudLayer.dPad.delegate=_gameLayer;
_hudLayer.jPad.delegate=_gameLayer;
_hudLayer.aPad.delegate=_gameLayer;
_gameLayer.hud=_hudLayer;
}
return self;
}
@end
有什么建议吗
谢谢你的回复,这就是我实现hud层的方式
标题:
@interface HudLayer : CCLayer {
CCLabelTTF *_lifeLabel;
CCLabelTTF *_enemyLabel;
}
@property(nonatomic,weak)SimpleDPad *dPad;
@property(nonatomic, weak)SimpleJPad *jPad;
@property(nonatomic, weak)SimpleAPad *aPad;
-(void)setLifeString:(NSString *)string;
-(void)setEnemyString:(NSString *)estring;
@end
执行.m:
@implementation HudLayer
-(id)init{
if((self=[super init])){
_dPad=[SimpleDPad dPadWithFile:@"pad.png" radius:50];
_dPad.position=ccp(90, 60);
_dPad.opacity=180;
[self addChild:_dPad];
_jPad=[SimpleJPad jPadWithFile:@"jumb.png" radius:30];
_jPad.position=ccp(450, 60);
_jPad.opacity=100;
[self addChild:_jPad];
_aPad=[SimpleAPad aPadWithFile:@"jumb.png" radius:30];
_aPad.position=ccp(390, 60);
_aPad.opacity=100;
[self addChild:_aPad];
//lifelabel
_lifeLabel = [CCLabelTTF labelWithString:@"" fontName:@"Marker Felt" fontSize:25];
_lifeLabel.position = ccp(90, 260);
[self addChild:_lifeLabel];
//enemy label
_enemyLabel = [CCLabelTTF labelWithString:@"" fontName:@"Marker Felt" fontSize:25];
_enemyLabel.position = ccp(380, 260);
[self addChild:_enemyLabel];
}
return self;
}
-(void)setLifeString:(NSString *)string{
_lifeLabel.string=string;
}
-(void)setEnemyString:(NSString *)estring{
_enemyLabel.string=estring;
}
@end
您可能需要显示一点hud图层代码。很多事情都可能出错。正是基于此,它应该在每个设备中始终显示,因此hud图层类内部一定发生了一些事情。使用hud图层代码编辑,感谢您的支持reply@john,使用相同的HUD实施和测试创建一个新项目。如果不起作用,请在此处共享您的示例项目。您的意思是共享示例项目,是否可以在站点中加载项目?代码就是我发布的所有代码,我唯一没有发布的是我在gamelayer类中创建了一个名为*hud的HUdLayer对象,仅此而已,可能是因为我使用了旧版本的cocos2d吗?我使用的是2.x版本,但即使是针对这个版本,它也不应该在模拟器中工作吗?再次感谢您的时间