Обратный отсчет до определенного дня недели - PullRequest
0 голосов
/ 13 ноября 2011

Я пытаюсь закодировать обратный отсчет до определенного дня недели.Я хочу отобразить текущий день недели и оставшиеся секунды до среды.

Я могу написать первую часть, но даже после полдня в поисках решения я не могу справиться со второй частью.

Это то, что у меня сейчас:

- (void)viewDidLoad {
    [countdownLabel setFont:[UIFont fontWithName:@"Helvetica" size:128.0]];
    countdownLabel.text = @"What day ist it?";
    [super viewDidLoad];
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}


- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview
    // Release anything that's not essential, such as cached data
}


- (void)dealloc {
    [super dealloc];
}

-(void)updateLabel {
    NSDateFormatter* theDateFormatter = [[[NSDateFormatter alloc] init] autorelease];
    [theDateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4];
    [theDateFormatter setDateFormat:@"EEEE"];
    countdownLabel.text =  [theDateFormatter stringFromDate:[NSDate date]];
}

1 Ответ

0 голосов
/ 13 ноября 2011

Посмотрите на классы NSDate и NSDateFormatter, они богаты подпрограммами для подобных вещей.

NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
NSDateFormatter * df = [NSDateFormatter dateFormatFromTemplate:@"yyyy-MM-dd-HH:mm" options:0 locale:usLocale];
NSDate * newyear = [df dateFromString:@"2012-01-01-00:00"];
NSTimeInterval seconds = [newyear timeIntervalSinceDate:[NSDate date]];

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

...