2014-11-04 2 views
0

Так что я осмотрелся переполнение стека для того, как переключить фоновое изображение в соответствии с текущим временем с IF заявления & NSDateComponents:Переключение фона в зависимости от времени

NSDateComponents *components = [NSDateComponents new]; 
//AM 
NSInteger Hour06 = 6; //1EarlyMorning 
NSInteger Hour08 = 8; //2Morning 
NSInteger Hour11 = 11; //3LateMorning 
//PM 
NSInteger Hour12 = 12; //4Afternoon 
NSInteger Hour16 = 16; //5LateAfternoon 
NSInteger Hour18 = 18; //6Evening 
NSInteger Hour20 = 20; //7LateEvening 
NSInteger Hour21 = 21; //8Night 
NSInteger Hour23 = 23; //9LateNight 


if (components.hour < Hour18) 
{ 
    self.backgroundImage = [SKSpriteNode spriteNodeWithImageNamed:@"6Evening"]; 
    self.backgroundImage.position = CGPointMake(self.size.width/2, self.size.height/2); 
    self.backgroundImage.zPosition = 0.0; //Default bottom position 

    [self addChild:self.backgroundImage]; 
} 

Но изображение не меняется. Я читал это Changing background according to time - Objective C &, это тоже не помогло. Может ли кто-нибудь сказать мне, что мне не хватает?

+0

что-то немного смущает ваш код - можете ли вы показать его больше? что собой представляет собой? UIView? – smaura777

+0

Да, я забыл упомянуть, что это делается в SKScene, поэтому игра SKView (Sprite Kit). – Krekin

+0

Вы имеете в виду: if (компонент.hour> Hour18) ... если вдруг – YvesLeBorg

ответ

0

My self & YvesLeBorg НАЙДЕ ОТВЕТ! Следующие работы, если вы используете SKView из-за Sprite Kit:

-(void)background 
{ 

    NSDateComponents *components = [NSDateComponents new]; 
    NSInteger Hour18 = 18; //6Evening 


    if (components.hour > Hour18) 
    { 
     self.backgroundImage = [SKSpriteNode spriteNodeWithImageNamed:@"6Evening"]; 
     self.backgroundImage.position = CGPointMake(self.size.width/2, self.size.height/2); 
     self.backgroundImage.zPosition = 0.0; //Default bottom position 

     [self addChild:self.backgroundImage]; 
    } 
} 
Смежные вопросы