Значение типа 'ImageSlideshow?'У пользователя нет элемента pageControlBottomPadding - PullRequest
1 голос
/ 22 апреля 2019

При обновлении с swift3 до swift4 у меня появляется эта ошибка: значение типа ImageSlideshow? не имеет члена pageControlBottomPadding

Я использую xcode10.1, swift4, target ios9.0 и выше.ImageSlideshow версия 1.7.0.

Есть также warnings: 'pageControl' is deprecated: Use pageIndicator.view instead

Я думаю, что это возможно, потому что имя члена изменилось в swift4, pageControl и его члены больше не используются, и попытался изменить pageControl на pageIndicatorили pageIndicator.view,

Но я искал и не могу найти соответствующее имя члена currentPageIndicatorTintColor и pageIndicatorTintColor и pageControlBottomPadding

Вот мой код:

import ImageSlideshow
...
@IBOutlet weak var imageSliderView: ImageSlideshow!
...
imageSliderView.pageControl.currentPageIndicatorTintColor = Color.Laser.instance()
        imageSliderView.pageControl.pageIndicatorTintColor = UIColor.white
        imageSliderView.pageControlBottomPadding = 30.0

screenshot image

Есть идеи, какое новое имя мне следует использовать?Или есть способ, которым я все еще могу использовать "pageControl" в swift4?Большое спасибо.

1 Ответ

1 голос
/ 22 апреля 2019

pageControl устарела в последней версии ImageSlideshow.

Пример из библиотеки github указывает, что вы должны использовать pageControl, как показано ниже. Это также исправит ваши устаревшие предупреждения:

@IBOutlet var slideshow: ImageSlideshow!

let pageControl = UIPageControl()
pageControl.currentPageIndicatorTintColor = UIColor.lightGray
pageControl.pageIndicatorTintColor = UIColor.black

slideshow.pageIndicator = pageControl

Чтобы исправить ошибку, используйте следующее:

slideshow.pageIndicatorPosition = .init(horizontal: .center, vertical: .customBottom(padding: 30))
...