Как скрутить страницу, как iBook, с движением пальца в iOS?

Здравствуйте, друзья, я хочу, чтобы моя страница была скрученной, как на странице iBook, также страница должна поворачиваться в соответствии с движением пальца. помогите пожалуйста заранее спасибо ..


person Aanchal Chaurasia    schedule 06.06.2013    source источник
comment
Может кто-нибудь мне помочь?   -  person Aanchal Chaurasia    schedule 29.06.2013


Ответы (1)


Вам необходимо реализовать UIPageViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self addChildViewController:self.pageViewController];
    [self.view addSubview:self.pageViewController.view];
    [self.pageViewController didMoveToParentViewController:self];
    self.pageViewController.view.frame = self.view.bounds;
}

- (UIPageViewController *)pageViewController
{
    if (!_pageViewController) {
        _pageViewController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStylePageCurl
                                                              navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal
                                                                            options:nil];
        _pageViewController.dataSource = self;
        _pageViewController.delegate = self;
        [_pageViewController setViewControllers:@[self.viewControllers.firstObject]
                                      direction:UIPageViewControllerNavigationDirectionForward
                                       animated:NO
                                     completion:nil];
    }
    return _pageViewController;
}

- (NSArray *)viewControllers // provide your view controller for each page
{
    if (!_viewControllers) {
        _viewControllers = @[
                             [UIViewController new],
                             [UIViewController new],
                             [UIViewController new],
                             [UIViewController new],
                             [UIViewController new],
                             ];
    }
    return _viewControllers;
}

#pragma mark - UIPageViewControllerDataSource

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController
{
    NSUInteger index = [self.viewControllers indexOfObject:viewController];
    if (index == 0) {
        return nil;
    }
    return [self.viewControllers objectAtIndex:--index];
}

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController
{
    if ([self.viewControllers.lastObject isEqual:viewController]) {
        return nil;
    }
    NSUInteger index = [self.viewControllers indexOfObject:viewController];
    return [self.viewControllers objectAtIndex:++index];
}
person rudensm    schedule 27.01.2015