类型“UIPageViewController.OptionsKey”(又名“NSString”)没有成员“interPageSpacing”
Posted
技术标签:
【中文标题】类型“UIPageViewController.OptionsKey”(又名“NSString”)没有成员“interPageSpacing”【英文标题】:Type 'UIPageViewController.OptionsKey' (aka 'NSString') has no member 'interPageSpacing' 【发布时间】:2019-06-04 08:50:02 【问题描述】:我不知道 Xcode 是怎么回事。我想在我的一个公司项目中使用初始化程序创建一个UIPageViewController
:
init(transitionStyle style: UIPageViewController.TransitionStyle,
navigationOrientation: UIPageViewController.NavigationOrientation,
options: [UIPageViewController.OptionsKey : Any]? = nil)
但是 Xcode 不断给出这个错误信息。
这是我的代码:
let vc = UIPageViewController(transitionStyle: .scroll,
navigationOrientation: .vertical,
options: [UIPageViewController.OptionsKey.interPageSpacing: 10])
同时,在我刚刚从模板Page-based App
(如下所示)创建的新演示项目中,它的构建没有任何错误。
如何修复/绕过它?
【问题讨论】:
我的解决方案是将 Build Setttings 中的Swift Language Version
从 4.0
更改为 5.0
或 4.2
。请注意,这样做意味着您必须迁移到 5.0
或 4.2
。
【参考方案1】:
Swift 4 中的语法有所不同。您当前的项目可能在 Swift 4.0 中。将其 swift 版本更改为 4.2 及更高版本。或者使用下面的代码
init(transitionStyle style: UIPageViewControllerTransitionStyle,
navigationOrientation: UIPageViewControllerNavigationOrientation,
options: [String : Any]? = nil)
Swift 4.0
let vc = UIPageViewController(transitionStyle: .scroll,
navigationOrientation: .vertical,
options: [UIPageViewControllerOptionInterPageSpacingKey : 10])
Swift 4.2 及更高版本
let vc = UIPageViewController(transitionStyle: .scroll,
navigationOrientation: .vertical,
options: [UIPageViewController.OptionsKey.interPageSpacing : 10])
【讨论】:
以上是关于类型“UIPageViewController.OptionsKey”(又名“NSString”)没有成员“interPageSpacing”的主要内容,如果未能解决你的问题,请参考以下文章