2016-07-11 3 views
0

Я использую шаблон Page-Based Application (RootViewController, DataViewController, ModelController) в Xcode. Я хочу перевернуть страницу после интервала времени. Как мне это сделать?Как перевернуть страницу после интервала времени?

Код для подвешивания следующей странице

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController 
{ 
    NSUInteger index = [self indexOfViewController:(DataViewController *)viewController]; 
    if (index == NSNotFound) { 
     return nil; 
    } 

    index++; 
    if (index == [self.pageData count]) { 
     return nil; 
    } 
    return [self viewControllerAtIndex:index storyboard:viewController.storyboard]; 
} 

ответ

0

я надеюсь, что это поможет вам

HomeViewController *homeVC = [[HomeViewController alloc] init]; 
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:homeVC]; 
[UIView transitionFromView:self.view toView:nav.view duration:0.5 options:UIViewAnimationOptionTransitionFlipFromLeft completion:^(BOOL finished) { 
            //Action to Implement 
          }]; 

[или]

HomeViewController *homeVC = [[HomeViewController alloc] init]; 
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:homeVC]; 
nav.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
nav.modalPresentationStyle = UIModalPresentationFormSheet; 
[[self navigationController] presentViewController:nav animated:YES completion:^{ 
       //Action to implement 
      }]; 
+0

Какой из контроллеров мне нужно использовать код? – user214155

+0

вы можете использовать этот код, на каком контроллере вы хотите перевернуть. –

+0

ex: контроллер A - ваш текущий класс, затем добавьте этот код для определенного действия, затем код перевернется на другой контроллер. B –

0

Переворот после интервала использования времени dispatch_after.

// define fromViewController depend on your previous code 
UIViewController *toViewController = [self pageViewController:pageViewController viewControllerAfterViewController:viewController]; 
// or set another toViewController depend on your previous code 

NSTimeInterval interval = 5; //in seconds 
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(interval * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ 
    [UIView transitionFromView:fromViewController.view toViewController:toViewController.view duration:0.4 options:UIViewAnimationOptionTransitionFlipFromLeft completion:^(BOOL finished) { 
     //completion block 
    }]; 
}); 
+0

. Посмотрите на экран https: //drive.google.com/file/d/0B0EJbcHq3ZALRVQxbGhfcHVpeDg/view?usp=sharing – user214155

+0

I worte «Определить изViewController в вашем коде». Я немного изменил свой ответ. – Igor

+0

, вы должны отредактировать этот фрагмент кода. Я не знаю имен ваших контроллеров в коде. – Igor

Смежные вопросы