Advertisement
Guest User

Untitled

a guest
Jan 21st, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.00 KB | None | 0 0
  1. class GrowController: UIViewController {
  2.  
  3. override func viewDidLoad() {
  4. super.viewDidLoad()
  5. print("*********************************")
  6. createGesture()
  7. // performSegue(withIdentifier: "ShowRegister", sender: self)
  8. }
  9.  
  10.  
  11. func createGesture() {
  12. let showReg = UISwipeGestureRecognizer(target: self, action: #selector(showRegister))
  13. showReg.direction = .left
  14. view.addGestureRecognizer(showReg)
  15. }
  16.  
  17.  
  18. func showRegister(gesture: UISwipeGestureRecognizer) {
  19. performSegue(withIdentifier: "showRegister", sender: self)
  20. }
  21.  
  22. }
  23.  
  24. class TutorialViewController: UIPageViewController, UIPageViewControllerDelegate, UIPageViewControllerDataSource {
  25.  
  26. var viewControllerIndex: Int?
  27.  
  28. lazy var tutorialArray: [UIViewController] = {
  29. return [self.tutorialInstance(name: "page1"), self.tutorialInstance(name: "page2"), self.tutorialInstance(name: "page3")]
  30. }()
  31.  
  32.  
  33. private func tutorialInstance(name: String?) -> UIViewController {
  34. return UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: name!)
  35. }
  36.  
  37.  
  38.  
  39. override func viewDidLoad() {
  40. super.viewDidLoad()
  41. if let image = UIImage(named: "export.png") {
  42. view.backgroundColor = UIColor.init(patternImage: image)
  43. } else {
  44. print("Error")
  45. }
  46.  
  47. self.dataSource = self
  48. self.delegate = self
  49.  
  50. if let firstViewController = tutorialArray.first {
  51. setViewControllers([firstViewController], direction: .forward, animated: false, completion: nil)
  52. }
  53. }
  54.  
  55. // Page View Controller delegate functions
  56. public func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {
  57. guard let viewControllerIndex = tutorialArray.index(of: viewController) else {
  58. return nil
  59. }
  60.  
  61. let previousIndex = viewControllerIndex - 1
  62.  
  63. guard previousIndex >= 0 else {
  64. return nil
  65. }
  66.  
  67. guard tutorialArray.count > previousIndex else {
  68. performSegue(withIdentifier: "ShowRegister", sender: self) // Added this line just testng around, nothing happend here though.
  69. return nil
  70. }
  71.  
  72. return tutorialArray[previousIndex]
  73. }
  74.  
  75.  
  76. public func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? {
  77. guard let viewControllerIndex = tutorialArray.index(of: viewController) else {
  78. return nil
  79. }
  80.  
  81. let nextIndex = viewControllerIndex + 1
  82.  
  83. guard nextIndex < tutorialArray.count else {
  84. return nil
  85. }
  86.  
  87. guard tutorialArray.count > nextIndex else {
  88. return nil
  89. }
  90.  
  91. return tutorialArray[nextIndex]
  92. }
  93.  
  94. public func presentationCount(for pageViewController: UIPageViewController) -> Int {
  95. return tutorialArray.count
  96. }
  97.  
  98. public func presentationIndex(for pageViewController: UIPageViewController) -> Int {
  99. guard let firstViewController = viewControllers?.first, let firstViewControllerIndex = tutorialArray.index(of: firstViewController) else {
  100. return 0
  101. }
  102. return firstViewControllerIndex
  103. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement