【问题标题】:Very choppy, slow page turn after instantiating a page in UIPageViewController在 UIPageViewController 中实例化页面后非常不稳定、缓慢的翻页
【发布时间】:2015-08-20 19:52:27
【问题描述】:

我有一个页面控制器,其中有三个页面或视图控制器。在我调用切换页面的方法(下面的帖子)并尝试滑动到另一个页面后,动画运行得非常缓慢且不稳定。大多数情况下,视图也会因为视图控制器的框架不适合屏幕而变得混乱。我认为不是实际切换页面,而是再次创建所有内容的新实例,但我似乎无法理解为什么它会这么慢,因为在我的正常代码中,我根据需要实例化每个视图并且它不会变慢当我滑动切换视图时向下。

(滑动到下一个视图也需要大约 5 秒)

此外,当我更改视图时,我会在我的页面视图控制器中重新排序“viewControllerBeforeViewController”方法,以便在我滑动时视图的顺序保持不变。

更新:我在我的一个视图中设置了一个摄像头。我相信这会导致速度缓慢,因为当我跳过加载该视图时一切都很好。但是我需要在我的应用程序中加载该视图:/

这是我的代码:

- (void)handleButtonTap:(NSNotification *)notification
{

changeOrder=1;
[self setViewControllers:@[[self.storyboard instantiateViewControllerWithIdentifier:@"one"] ] direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:nil];


}

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController
{
if ([viewController isKindOfClass:[NavView2ViewController class]])
    return nil;
if(changeOrder ==1)
{
    if ([viewController isKindOfClass:[NavView2ViewController class]])
    {
        return nil;
    }
    if ([viewController isKindOfClass:[MainStoryViewController class]])
    {
        return [self.storyboard instantiateViewControllerWithIdentifier:@"Profile"];
    }
    return [self.storyboard instantiateViewControllerWithIdentifier:@"Main"];
}
return [self.storyboard instantiateViewControllerWithIdentifier:@"Profile"];

}

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


if ([viewController isKindOfClass:[NavViewController class]])
    return nil;
if(changeOrder==1)
{

    if ([viewController isKindOfClass:[MainStoryViewController class]])
    {
        return [self.storyboard instantiateViewControllerWithIdentifier:@"one"];
    }
    return [self.storyboard instantiateViewControllerWithIdentifier:@"Profile"];

}
return [self.storyboard instantiateViewControllerWithIdentifier:@"one"];

}

【问题讨论】:

    标签: ios uiviewcontroller uipageviewcontroller


    【解决方案1】:

    我在其中一个子视图中创建了一个具有三个视图的 UIPageViewController 和一个带有相机控制的 UIImagePicker。 这是链接: https://github.com/ShashwatMittal/UIPageViewController.git

    让我知道它是否适合您。希望对您有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-11
      • 2016-06-10
      • 2020-11-24
      • 2015-09-13
      相关资源
      最近更新 更多