Ocultar puntos en la página final de UIPageViewController swift

Tengo cuatro páginas en un UIPageViewController, y me gustaría ocultar los puntos en la última página. Realicé con éxito una función que se llama en la última página del UIPageViewController. Básicamente, si la vista actual es la última, se llama. Pero, ¿qué pongo en esa función para ocultar los puntos temporalmente?

encontré estohttps://stackoverflow.com/a/32016614/5700898 pero no ayuda con lo que entra dentro de esa función. El método normal (ocultar puntos de página en todas las páginas) no es lo que necesito.

¿Cómo puedo ocultar los puntos del indicador de página solo en la última página de un UIPageViewController?

Editar: Aquí está mi código según lo solicitado.

import UIKit

class TutorialController: UIPageViewController {

    let pageControl = UIPageControl.appearanceWhenContainedInInstancesOfClasses([])

    var currentview = "0"

    private func stylePageControl() {

        pageControl.currentPageIndicatorTintColor = UIColor.lightGrayColor()
        pageControl.pageIndicatorTintColor = UIColor.darkGrayColor()
        pageControl.backgroundColor = UIColor.whiteColor()
    }

    private func hidePageControl() { // this should let us hide the dots on the fourth view, by changing color.

        pageControl.backgroundColor = UIColor(red: 0.2980392157, green: 0.2980392157, blue: 0.2980392157, alpha: 1.0)
        pageControl.currentPageIndicatorTintColor = UIColor(red: 0.2980392157, green: 0.2980392157, blue: 0.2980392157, alpha: 1.0)
        pageControl.pageIndicatorTintColor = UIColor(red: 0.2980392157, green: 0.2980392157, blue: 0.2980392157, alpha: 1.0)
    }


    private(set) lazy var orderedViewControllers: [UIViewController] = {
        return [self.newViewController("1"),
                self.newViewController("2"),
                self.newViewController("3"),
                self.newViewController("4")]
    }()

    private func newViewController(number: String) -> UIViewController {
        return UIStoryboard(name: "Main", bundle: nil) .
            instantiateViewControllerWithIdentifier("Tutorial\(number)") // calls the next view controller.
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        stylePageControl() // just changing the color, this works.
        dataSource = self

        if let firstViewController = orderedViewControllers.first {
            setViewControllers([firstViewController],
                               direction: .Forward,
                               animated: true,
                               completion: nil)
        }

    }
}

// MARK: UIPageViewControllerDataSource

extension TutorialController: UIPageViewControllerDataSource {

    func presentationCountForPageViewController(pageViewController: UIPageViewController) -> Int {
        return orderedViewControllers.count

    }

    func presentationIndexForPageViewController(pageViewController: UIPageViewController) -> Int {
        guard let firstViewController = viewControllers?.first,
            firstViewControllerIndex = orderedViewControllers.indexOf(firstViewController) else {
                return 0
        }

        return firstViewControllerIndex
    }


    func pageViewController(pageViewController: UIPageViewController,
                            viewControllerBeforeViewController viewController: UIViewController) -> UIViewController? {
        guard let viewControllerIndex = orderedViewControllers.indexOf(viewController) else {
            return nil
        }

        let previousIndex = viewControllerIndex - 1


        guard previousIndex >= 0 else {
            return nil
        }

        guard orderedViewControllers.count > previousIndex else {
            return nil
        }

        return orderedViewControllers[previousIndex]
    }

    func pageViewController(pageViewController: UIPageViewController,
                            viewControllerAfterViewController viewController: UIViewController) -> UIViewController? {
        guard let viewControllerIndex = orderedViewControllers.indexOf(viewController) else {
            return nil
        }

        let nextIndex = viewControllerIndex + 1
        currentview = "\(nextIndex)"
        print("now on tutorial slide \(currentview)")
        if currentview == "4" { // this is called successfully when the fourth page comes into view.
            print("we are now on the fourth slide; hiding the page dots...") // this successfully prints.


      UIPageControl.appearanceWhenContainedInInstancesOfClasses([TutorialController.s‌​elf]).hidden = true // this should hide the all page controller dots, but it just doesn't work.
        pageControl.hidden = true // also should hide page controller dots, also doesn't work.
        hidePageControl() // this should change the color of the page controller dots, but doesn't (note that this function works to change color when I call it on viewDidLoad, but that's not where I want it; it doesn't work here).

        print(pageControl.hidden) // always prints false, even though I am trying to set it to true.

        }

        let orderedViewControllersCount = orderedViewControllers.count

        guard orderedViewControllersCount != nextIndex else {
            return nil
        }

        guard orderedViewControllersCount > nextIndex else {
            return nil
        }

        return orderedViewControllers[nextIndex]
    }

}

Respuestas a la pregunta(5)

Su respuesta a la pregunta