swift ios 以编程方式设置 PageViewController 的过渡样式和方向

Posted

技术标签:

【中文标题】swift ios 以编程方式设置 PageViewController 的过渡样式和方向【英文标题】:swift ios Set transition style and orientation programmatically of PageViewController 【发布时间】:2018-02-01 07:17:49 【问题描述】:

我有视图控制器,它的超类是 UIPageViewController 我想要它的过渡风格和方向。

var navigationOrientation: UIPageViewControllerNavigationOrientation  
get 
var transitionStyle: UIPageViewControllerTransitionStyle  get 

该属性的值是在页面视图控制器初始化时设置的,不能更改。 页面在视图控制器中的初始化位置以及如何设置这些属性。

【问题讨论】:

【参考方案1】:

从我们调用此页面视图控制器的位置,例如在按钮单击方法上,您可以像这样初始化

let vc = YourPageViewController(transitionStyle: 
UIPageViewControllerTransitionStyle.scroll, navigationOrientation: 
UIPageViewControllerNavigationOrientation.horizontal, options: nil)
self.present(vc, animated: true, completion: nil)

在 YourPageViewController 中你可以实现初始化器

override init(transitionStyle style: UIPageViewControllerTransitionStyle, navigationOrientation: UIPageViewControllerNavigationOrientation, options: [String : Any]? = nil) 
        super.init(transitionStyle: style, navigationOrientation: navigationOrientation, options: nil)
    

required init?(coder: NSCoder) 
    fatalError("init(coder:) has not been implemented")

将设置从按钮单击动作传递的值,您将具有水平方向和滚动过渡样式

【讨论】:

以上是关于swift ios 以编程方式设置 PageViewController 的过渡样式和方向的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在Swift中以编程方式设置NSCollectionView?

Swift:如何以编程方式获取iOS设备的唯一标识符?

iOS View 中的 MVC 设计与模型对话 - Swift - 以编程方式

IOS swift scrollview以编程方式

Swift 3,iOS 10 - 以编程方式声明 UIStackView 不适合屏幕宽度

如何使用 Swift 以编程方式跨越 iOS 导航控制器?