Тип «UIPageViewController.OptionsKey» (он же «NSString») не имеет члена «interPageSpacing» - PullRequest
0 голосов
/ 04 июня 2019

Я не знаю, что случилось с 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 (как показано ниже), он собирается без каких-либо ошибок.

template

Как это исправить / обойти?

1 Ответ

2 голосов
/ 04 июня 2019

Синтаксис был другим в Swift 4. Ваш текущий проект может быть в Swift 4.0. Измените его быструю версию на 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])
...