簡體   English   中英

iOS obj-c從UIPageViewController移動

[英]iOS obj-c move from UIPageViewController

我已經成功創建了一個“教程”頁面,這些頁面將在用戶第一次打開應用程序時顯示。 我正面臨着如何移到故事板上的另一個“分支”視圖控制器的問題。

所以基本上我的情節提要中有兩個主要流程:

1. Page View Controllers 
2. Main app view controllers

從下面的屏幕截圖中可以看到

屏幕截圖

因此,問題是,在用戶單擊我的UIPageViewController中的跳過按鈕之后,如何移至我的主應用程序流程?

在我的教程頁面視圖控制器中,我具有以下代碼來設置頁面視圖控制器

- (void)viewDidLoad {
[super viewDidLoad];
self.arrPageTitles = @[@"A",@"B",@"C"];
self.arrPageImages =@[@"1.jpg",@"2.jpg",@"3.jpg"];

// Create page view controller
self.PageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"pageViewController"];
self.PageViewController.dataSource = self;

TutorialPageContentViewController *startingViewController = [self viewControllerAtIndex:0];
NSArray *viewControllers = @[startingViewController];
[self.PageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil];

// Change the size of page view controller
self.PageViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height - 30);

[self addChildViewController:self.PageViewController];
[self.view addSubview:self.PageViewController.view];
[self.PageViewController didMoveToParentViewController:self];
}

還是有更好的方法來實現這一目標? 我的設計錯了嗎?

我正在尋找任何線索,但找不到任何線索。 謝謝!

首先,我建議您對教程流程和主應用程序屏幕使用不同的故事板。 將所有內容存儲在單個情節提要中非常困難:當項目至少具有20-30個視圖控制器時,您會有些混亂。

您可以隨時使用以下代碼替換根視圖控制器:

let storyboard = UIStoryboard(name: "<storyboard_name>", bundle: nil)
let viewController = storyboard.instantiateViewController(withIdentifier: "<vc_name>")
UIApplication.shared.keyWindow?.rootViewController = viewController

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM