Advertisement
iamalizade

Untitled

Aug 7th, 2015
435
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Swift 3.94 KB | None | 0 0
  1. //
  2. //  WelcomeController.swift
  3. //  Messenger
  4. //
  5. //  Created by Orkhan Alizade on 03.08.15.
  6. //  Copyright (c) 2015 Orkhan Alizade. All rights reserved.
  7. //
  8.  
  9. import UIKit
  10.  
  11. class WelcomeController: UIViewController, UIPageViewControllerDataSource {
  12.     @IBOutlet var signUp: UIButton!
  13.     @IBOutlet var logIn: UIButton!
  14.  
  15.     var pageViewController: UIPageViewController!
  16.     var pageImages: NSArray!
  17.    
  18.     override func viewDidLoad() {
  19.         super.viewDidLoad()
  20.         // Do any additional setup after loading the view, typically from a nib.
  21.        
  22.         let screen = UIScreen.mainScreen().bounds
  23.        
  24.         let widthConstraint = NSLayoutConstraint (item: signUp, attribute: NSLayoutAttribute.Width, relatedBy: NSLayoutRelation.Equal, toItem: nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 1, constant: screen.width/2 + 12)
  25.         self.view.addConstraint(widthConstraint)
  26.  
  27.         let widthConstraint2 = NSLayoutConstraint (item: logIn, attribute: NSLayoutAttribute.Width, relatedBy: NSLayoutRelation.Equal, toItem: nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 1, constant: screen.width/2 + 12)
  28.         self.view.addConstraint(widthConstraint2)
  29.        
  30.         self.pageImages = NSArray(objects: "1.jpg", "1.jpg", "1.jpg", "1.jpg")
  31.        
  32.         self.pageViewController = self.storyboard?.instantiateViewControllerWithIdentifier("PageViewController") as! UIPageViewController
  33.        
  34.         self.pageViewController.dataSource = self
  35.        
  36.         var startVC = self.viewControllerAtIndex(0) as ContentViewController
  37.         var viewControllers = NSArray(object: startVC)
  38.  
  39.         self.pageViewController.setViewControllers(viewControllers as [AnyObject], direction: .Forward, animated: true, completion: nil)
  40.         self.pageViewController.view.frame = CGRectMake(0, 0, self.view.frame.width, self.view.frame.size.height - 50)
  41.        
  42.         self.addChildViewController(self.pageViewController)
  43.         self.view.addSubview(self.pageViewController.view)
  44.         self.pageViewController.didMoveToParentViewController(self)
  45.     }
  46.    
  47.     func viewControllerAtIndex(index: Int) -> ContentViewController {
  48.         if ((self.pageImages.count == 0) || (index >= self.pageImages.count)) {
  49.             return ContentViewController()
  50.         }
  51.        
  52.         var vc: ContentViewController = self.storyboard?.instantiateViewControllerWithIdentifier("ContentViewController") as! ContentViewController
  53.  
  54.         vc.imageFile = self.pageImages[index] as! String
  55.         vc.pageIndex = index
  56.  
  57.         return vc
  58.     }
  59.    
  60.     func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController? {
  61.  
  62.         var vc = viewController as! ContentViewController
  63.         var index = vc.pageIndex as Int
  64.        
  65.         if (index == 0 || index == NSNotFound) {
  66.             return nil
  67.         }
  68.  
  69.         index--
  70.        
  71.         return self.viewControllerAtIndex(index)
  72.     }
  73.    
  74.     func pageViewController(pageViewController: UIPageViewController, viewControllerAfterViewController viewController: UIViewController) -> UIViewController? {
  75.  
  76.         var vc = viewController as! ContentViewController
  77.         var index = vc.pageIndex as Int
  78.  
  79.         if (index == NSNotFound) {
  80.             return nil
  81.         }
  82.        
  83.         index++
  84.        
  85.         if (index == self.pageImages.count) {
  86.             return nil
  87.         }
  88.  
  89.         return self.viewControllerAtIndex(index)
  90.     }
  91.    
  92.     func presentationCountForPageViewController(pageViewController: UIPageViewController) -> Int {
  93.         return self.pageImages.count
  94.     }
  95.    
  96.     func presentationIndexForPageViewController(pageViewController: UIPageViewController) -> Int {
  97.         return 0
  98.     }
  99.    
  100.     override func didReceiveMemoryWarning() {
  101.         super.didReceiveMemoryWarning()
  102.         // Dispose of any resources that can be recreated.
  103.     }
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement