我正在开发一个小应用程序,我在其中将 tilemap ( JSTilemap ) 加载到 sprite kit 中。
这一切都很好,除了瓦片 map 在纵向上看起来正常而且很好,但是当我翻转到横向时它似乎爆炸了。我没有添加任何代码,只是导入了 JSTilemap header 和此代码 initwithsize。
self.map = [JSTileMap mapNamed:@"tilemap.tmx"];
[self addChild:self.map];
我还下载了一个带有瓦片 map 的简单项目,当我旋转时大小保持不变,只是如果我尝试模仿代码,我的瓦片 map 在旋转时似乎仍然会爆炸。
是否有一些设置可以限制我所缺少的?
最佳答案
您应该使用 -(id)initWithSize:(CGSize)size
而不是 -(void)didMoveToView:(SKView *)view
-(id)initWithSize:(CGSize)size {
if (self = [super initWithSize:size]) {
JSTileMap* tiledMap = [JSTileMap mapNamed:@"level1.tmx"];
if (tiledMap)
[self addChild:tiledMap];
self.userInteractionEnabled = YES;
}
return self;
}
同样在 GameViewController 中(如果您使用的是默认模板类),您应该使用 sceneWithSize
更改场景初始化
/*
// Create and configure the scene.
GameScene *scene = [GameScene unarchiveFromFile:@"GameScene"];
scene.scaleMode = SKSceneScaleModeAspectFill;
*/
// Create and configure the scene.
SKScene * scene = [GameScene sceneWithSize:skView.bounds.size];
scene.scaleMode = SKSceneScaleModeAspectFill;
关于ios - Tilemap 在横向时改变大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22795821/