2015-10-31 3 views
0

У меня есть scrollView в основном storyboard, подключенный к трем различным ViewControllers, которые являются xib-файлами с вертикальной прокруткой страницы.Как я могу загрузить определенный ViewController в scrollView с помощью xib-файлов?

Все работает нормально, но я хотел бы знать, есть ли способ загрузить определенный viewController.

viewControllers являются названы:

viewController1 (notifications.xib)

viewController2 (newViewController.xib)

viewController3 (settings.xib)

ViewControllers загружаются в заказанные 1,2,3, поэтому прокрутка может быть только от начальной нагрузки.

viewController1 < - это начальная нагрузка, когда приложение построить

viewController2

viewController3

Я хотел бы начальную нагрузку, чтобы быть в середине, которая с viewController 2, поэтому прокрутка может быть вверх и вниз от начальной нагрузки.

viewController1

viewController2 < - начальная нагрузка должна быть в этом, когда приложение строить

viewController3

это код от главного viewController.swift

override func viewDidLoad() { 
super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 

let notifications : notificationsView = notificationsView(nibName: "notificationsView", bundle: nil) 
let newController : newViewController = newViewController(nibName: "newViewController", bundle: nil) 
let settings : settingsView = settingsView(nibName: "settingsView", bundle: nil) 

self.addChildViewController(newController) 
self.scrollView.addSubview(newController.view) 
newController.didMoveToParentViewController(self) 

self.addChildViewController(notifications) 
self.scrollView.addSubview(notifications.view) 
notifications.didMoveToParentViewController(self) 

self.addChildViewController(settings) 
self.scrollView.addSubview(settings.view) 
settings.didMoveToParentViewController(self) 

//size of frames 
var newControllerFrame : CGRect = newController.view.frame 
newControllerFrame.origin.y = self.view.frame.height 
newController.view.frame = newControllerFrame 

var settingsFrame : CGRect = settings.view.frame 
settingsFrame.origin.y = self.view.frame.height * 2 
settings.view.frame = settingsFrame 

self.scrollView.contentSize = CGSizeMake(self.view.frame.size.width, self.view.frame.size.height * 3) 

Я надеюсь, что это поможет, любая помощь или предложения будут очень признательны.

ответ

0

Итак, в основном вы хотите начать посередине вместо первого?

Если это так, вы делаете что-то вроде этого.

CGPoint point = secondVC.frame.origin; 

[scrollView setContentOffset:point animated: YES]; 
Смежные вопросы