Переход между UIAlertControllers - PullRequest
       44

Переход между UIAlertControllers

0 голосов
/ 11 февраля 2019

Что мне нужно сделать, так это представить контроллер предупреждений с индикатором прогресса.После завершения загрузки мне нужно успешно перейти на дополнительный контроллер оповещений!сообщение и кнопку «ОК» для пользователя, чтобы просто выйти из этой настройки.Я построил оповещения отдельно, и они работают хорошо сами по себе (хорошо, индикатор выполнения вроде бы работает ...), но с этим кодом:

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

-(void)settingUpToolsProgressPopUp {
 UIAlertController* progressAlert = [UIAlertController alertControllerWithTitle:@"Setting up tools ..." message:@"This could take a few minutes. Make sure to keep your tools near your mobile device." preferredStyle:UIAlertControllerStyleAlert];
 [self presentViewController:progressAlert animated:YES completion:^{
 //Progress bar setup
 UIProgressView *progressView;
 progressView = [[UIProgressView alloc]initWithFrame:CGRectMake(8.0, 98.0, progressAlert.view.frame.size.width - 16, 100.0)];

 [[progressView layer]setCornerRadius:50];
 progressView.trackTintColor = [UIColor whiteColor];
 progressView.progressTintColor = [UIColor blueColor];
      progressNumerator = 1.0;
      progressDenominator = 1.0;
      currentProgress = (float)(progressNumerator/progressDenominator);
      [progressView setProgress: currentProgress animated:YES];
 [progressAlert.view addSubview:progressView];

  if(currentProgress > 1.0){
      [self settingUpToolsProgressPopUp];
 } else if(currentProgress == 1.0){
      [self dismissViewControllerAnimated:YES completion:nil];
      [self successAlertPopUp];
 }

 }];


 }

ps Я знаю, что значения прямо сейчас закодированы ... но независимоникаких значений, которые я использую, переход не происходит.У меня пока нет доступа к обновленным значениям, поэтому я не могу использовать другие значения прямо сейчас ... но я ожидаю, что если я использую 100% -ное значение, тогда переход произойдет в любом случае?

Может кто-то указать мне верное направление?Почему этот код не работает для перехода между этими контроллерами?

Большое спасибо!

1 Ответ

0 голосов
/ 11 февраля 2019

Вам нужно вызвать successAlertPopUp метод внутри обработчика завершения dismissViewControllerAnimated:

[self dismissViewControllerAnimated:YES completion:^{
    [self successAlertPopUp];
}];
...