2016-11-18 2 views
1

Как добавить существующие контроллеры View View в список прокрутки. Я пробовал код ниже внутри 'viewDidLoad', но он не работал. СпасибоДобавление контроллеров просмотра рядом со списком прокрутки

let view1 = ViewController6() 
     let view2 = ViewController2() 
     let view3 = ViewController3() 

     contentView.addSubview(view1) 
     contentView.addSubview(view2) 
     contentView.addSubview(view3) 

     self.contentView.contentSize = CGSize(width: self.view.frame.width * 3, height: self.view.frame.height) 
+0

Посмотри вид контейнера. Идея состоит в том, что вы создаете ContentView (UIView), добавляете дочерние UIViewControllers в текущий ViewController, а затем добавляете представление Child ViewController в представление содержимого. – uti0mnia

ответ

0

Проверьте этот код. Здесь я делаю именно то, чего вы хотите достичь.

func setupScrollView() 
    { 
     //loop for 
     for i in 0..<3 { 
      //we instantiate our viewController from storyboard 
      let news2 = self.storyboard?.instantiateViewController(withIdentifier: "NewsMasterViewController") as! NewsMasterViewController 
      //we adjust the frame according 
      news2.view.frame = CGRect(x: CGFloat(i) * self.scrollView.frame.size.width + CGFloat(MasterViewController.margin), y: 0, width: self.scrollView.frame.size.width - CGFloat(MasterViewController.margin * 2), height: self.scrollView.frame.size.height) 
      //we call layoutSubviews for constraints adjustments 
      news2.view.layoutSubviews() 
      self.addChildViewController(news2) 
      //added the view of my viewController "news2" to scrollView 
      self.scrollView.addSubview(news2.view) 
      news2.didMove(toParentViewController: self) 
      //added the viewController "news2" to my array of viewControllers 
      newsMasterViewControllers.append(news2) 
     } 

     //adjusted contentSize of scrollView according the number of viewControllers added 
     self.scrollView.contentSize = CGSize(width: self.view.frame.size.width * 3, height: self.scrollView.frame.size.height); 
    } 

Я надеюсь, что это поможет вам

Смежные вопросы