UIStatusBarAnimationFade длительность

У меня есть приложение, где у меня есть кнопка, которая превращает экран в черный цвет. Я хочу, чтобы строка состояния тоже стала черной, поэтому я использую следующий код:

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];

Можно ли мне установить длительность замирания? Если это невозможно, возможно ли получить официальную продолжительность затухания (например, используя UIKeyboardAnimationDurationUserInfoKey чтобы получить длительность скольжения клавиатуры).


Ну, я ничего не получил от кого-либо, но я думаю, что я должен по крайней мере поделиться своим взломом. После некоторых экспериментов я остановился на 1 секунде, а на выходе - на 0,25 секунды.

- (IBAction)fadeToBlack:(id)sender
{
    UIView *view = [[[UIView alloc] initWithFrame:self.view.window.frame] autorelease];
    view.backgroundColor = [UIColor blackColor];
    view.alpha = 0.0;
    [self.view.window addSubview:view];

    // NOTE: Fading the black view at the same rate as the status bar. Duration is just a guess.
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
    [UIView animateWithDuration:1.0 animations:^{
        view.alpha = 1.0;
    } completion:^(BOOL finished) {
        [view addGestureRecognizer:self.dismissViewGesture];
    }];
}

- (void)dismissViewWithGesture:(UIGestureRecognizer *)gesture
{
    UIView *view = gesture.view;
    [view removeGestureRecognizer:gesture];

    // NOTE: Fading the black view at the same rate as the status bar. Duration is just a guess.
    [[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
    [UIView animateWithDuration:0.25 animations:^{
        view.alpha = 0.0;
    } completion:^(BOOL finished) {
        [view removeFromSuperview];
    }];
}

1 ответ

У меня была та же проблема, и мои значения равны 0,5 для скрытия и 0,2 для отображения панели навигации вместе со строкой состояния. По крайней мере, для iOS 6.1/iOS Simulator эти значения намного лучше соответствуют реальности.

Другие вопросы по тегам