在计时器的帮助下,Swift 4 在页面视图控制器中自动滑动
Posted
技术标签:
【中文标题】在计时器的帮助下,Swift 4 在页面视图控制器中自动滑动【英文标题】:Swift 4 auto slide in page view controller with help of timer 【发布时间】:2018-10-06 07:12:35 【问题描述】:我正在尝试使用swift 4
在page view controller
中创建auto sliding
。在这里,我尝试了下面的代码,但我得到了结果,它首先重复图像的index
。我需要知道,如何实现下一个索引的移动?
// Image array
var name = ["one.png","two.png","three.png","four.png"]
// Timer in viewdidload()
tTime = Timer.scheduledTimer(timeInterval: 4, target: self, selector: #selector(changeSlide), userInfo: nil, repeats: true)
// Timer function call (The problem is here...)
@objc func changeSlide()
let pageContentViewController = self.viewControllerAtIndex(index: 0)
self.pageViewController.setViewControllers([pageContentViewController!], direction: UIPageViewControllerNavigationDirection.forward, animated: true, completion: nil)
【问题讨论】:
在 viewdidload() 中添加 timer.starttimer() 方法 【参考方案1】: // Image array
var name = ["one.png","two.png","three.png","four.png"]
var currentIndex = -1
// Timer in viewdidload()
tTime = Timer.scheduledTimer(timeInterval: 4, target: self, selector: #selector(changeSlide), userInfo: nil, repeats: true)
// Timer function call
@objc func changeSlide()
currentIndex = (currentIndex == name.count - 1) ? 0 : currentIndex + 1
let pageContentViewController = self.viewControllerAtIndex(index: currentIndex)
self.pageViewController.setViewControllers([pageContentViewController!], direction: UIPageViewControllerNavigationDirection.forward, animated: true, completion: nil)
【讨论】:
或者你可以这样做:currentIndex = (currentIndex == name.count - 1) ? 0 : currentIndex + 1
;)以上是关于在计时器的帮助下,Swift 4 在页面视图控制器中自动滑动的主要内容,如果未能解决你的问题,请参考以下文章
使用我的视图控制器 swift 4 中的按钮使用 UIPageViewController 更改页面
swift 4 中使用 performSegue 打开的关闭页面时,如何在视图控制器和 TableViewController 之间传递数据?
Xcode Swift 3:计时器和 Segue 视图控制器错误
当使用在swift 4中使用performSegue打开的dismiss页面时,如何在视图控制器和TableViewController之间传递数据?