【问题标题】:RTL languages uipageviewcontroller curl animation for one view controller一个视图控制器的 RTL 语言 uipageviewcontroller 卷曲动画
【发布时间】:2014-10-29 08:27:09
【问题描述】:

我需要执行 uipageviewcontroller 从右到左的转换。所以我看thisthis 的例子。但不同的是我一次显示一个视图控制器,pageViewController:spineLocationForInterfaceOrientation: 只能返回UIPageViewControllerSpineLocationMin 而不是UIPageViewControllerSpineLocationMax。这是我到目前为止所做的。

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController {

NSUInteger index = [(APPChildViewController *)viewController index];

if (index == 0) {
    return nil;
}

// Decrease the index by 1 to return
index--;

return [self viewControllerAtIndex:index];}

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController {

NSUInteger index = [(APPChildViewController *)viewController index];

index++;

if (index == 15) {
    return nil;
}

return [self viewControllerAtIndex:index];}

- (UIPageViewControllerSpineLocation)pageViewController:(UIPageViewController *)pageViewController
               spineLocationForInterfaceOrientation:(UIInterfaceOrientation)orientation {
UIViewController *currentViewController = [self.pageController.viewControllers objectAtIndex:0];
NSArray *viewControllers = [NSArray arrayWithObject:currentViewController];
[self.pageController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:NULL];

self.pageController.doubleSided = NO;
//Return the spine location
return UIPageViewControllerSpineLocationMin;
}


如何使用UIPageViewControllerSpineLocationMin 使 curl 正常工作?我也不能使用基于页面的应用程序模板。

【问题讨论】:

    标签: ios objective-c uipageviewcontroller


    【解决方案1】:

    基于this 我找到了解决方案。这是代码。

    - (UIPageViewControllerSpineLocation)pageViewController:(UIPageViewController *)pageViewController spineLocationForInterfaceOrientation:(UIInterfaceOrientation)orientation {
    UIViewController *currentViewController = [self.pageController.viewControllers objectAtIndex:0];
    NSArray *viewControllers = [NSArray arrayWithObject:currentViewController];
    [self.pageController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:NULL];
    
    self.pageController.doubleSided = NO;
    return UIPageViewControllerSpineLocationMax;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-26
      • 1970-01-01
      • 2014-07-01
      • 1970-01-01
      相关资源
      最近更新 更多