TweeningUIPageViewController 1.0.0

TweeningUIPageViewController 1.0.0

测试已测试
Lang语言 SwiftSwift
许可 MIT
发布最后发布2016年6月
SPM支持 SPM

Adam Szeremeta 维护。



  • Adam Szeremeta

TweeningUIPageViewController

扩展了 UIPageViewController 并实现了背景颜色淡入淡出

demo

目录

功能

  • 控制器之间的背景颜色动画淡入淡出

安装

推荐的方式是使用 CococaPods

use_frameworks!
pod 'TweeningUIPageViewController', '~> 1.0.0'

如果由于某些原因您不能使用 CocoaPods,那么请从 TweeningUIPageViewController/ 中获取文件并将它们放入您的项目中。

使用

将 UIPageViewController 的现有实现添加或替换为 TweeningPageViewController 并实现 TweeningPageViewControllerDelegate 协议。以下您可以找到一些代码片段。您还可以查看完整的示例项目。

设置 TweeningPageViewControllerDelegate

let pageController = ... (reference to your TweeningPageViewController instance)
pageController.tweeningDelegate = self

实现 TweeningPageViewControllerDelegate 的必需方法

// MARK: TweeningUIPageViewControllerDelegate

func tweeningPageViewController(tweeningController:TweeningPageViewController, backgroundColorForControllerBeforeController viewController:UIViewController?) -> UIColor? {

    if let pageController = viewController as? MyPageViewController {

        let previousIndex = pageController.controllerIndex - 1
        if previousIndex >= 0 && previousIndex < self.backgroundColors.count {

            return self.backgroundColors[previousIndex]
        }
    }

    return nil
}

func tweeningPageViewController(tweeningController:TweeningPageViewController, backgroundColorForCurrentController viewController:UIViewController?) -> UIColor? {

    if let pageController = viewController as? MyPageViewController {

        return self.backgroundColors[pageController.controllerIndex]
    }

    return nil
}

func tweeningPageViewController(tweeningController:TweeningPageViewController, backgroundColorForControllerAfterController viewController:UIViewController?) -> UIColor? {

    if let pageController = viewController as? MyPageViewController {

        let nextIndex = pageController.controllerIndex + 1
        if nextIndex >= 0 && nextIndex < self.backgroundColors.count {

            return self.backgroundColors[nextIndex]
        }
    }

    return nil
}

许可证

TweeningUIPageViewController 使用 MIT 许可证发布。