IOS, установка размера кадра сцены с помощью cocos2d-ObjC - PullRequest
0 голосов
/ 02 июля 2019

enter image description here

Я новичок в cocos2d, мне нужен кадр сцены инициализации, чтобы он был меньше размера экрана устройства, как показано на закрепленном изображении в центре.Кроме того, сцена должна масштабироваться, как показано на картинке.Я пытался сделать это, как показано ниже, но безуспешно.

- (void)drawBackground
{
    NSArray *assetPathParts = [self.dataProvider.backgroundValue componentsSeparatedByString:@"/"];
    self.background = [CCSprite spriteWithImageNamed:assetPathParts.lastObject];
    self.background.anchorPoint = ccp(0,0);
    self.background.scale = 2;
    self.background.scaleType = CCScaleTypeScaled;
    [self addChild:self.background];
}

Как я могу это исправить?

1 Ответ

1 голос
/ 07 июля 2019

2 способа установки экрана.

Метод 1 :

CGSize wSize = [[CCDirector sharedDirector] winSize];

CCSprite *background = [CCSprite spriteWithFile:@"Kundapura.png"];
background.position  = ccp(wSize.width*0.5f, wSize.height*0.5f);
[self addChild:background];
background.scaleX = wSize.width/background.contentSize.width ;
background.scaleY = wSize.height/background.contentSize.height ;

Метод 2:

CGSize wSize = [[CCDirector sharedDirector] winSize];

CCSprite *image = [CCSprite spriteWithFile:@"Kundapura.png"];
CCSprite *background = [CCSprite spriteWithTexture: image.texture rect:CGRectMake(0, 0, wSize.width, wSize.height)];

background.position  = ccp(wSize.width*0.5f, wSize.height*0.5f);
[self addChild:background];

Это соответствует вашему фону под размер устройства iPhone. Используйте runAction для масштабирования в соответствии со своими потребностями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...