Swift:Xcode tableView 无限滚动
Posted
技术标签:
【中文标题】Swift:Xcode tableView 无限滚动【英文标题】:Swift: Xcode tableView scroll indefinitely 【发布时间】:2015-07-11 19:33:50 【问题描述】:我有一个包含约 500 个单元格的 swift 表格视图。我希望它在没有任何用户输入的情况下自行滚动。有点像显示信息的股票代码。我该怎么做呢?此外,当它触及底部时,我希望它再次从顶部开始。有什么方法或工具可以做到这一点吗?
【问题讨论】:
这听起来不像表格视图真的是一个合适的视图。如果它只是一个报价单。应该可以相当容易地使用一组视图来滚动您自己的代码,这些视图可以被重用并按照所需的方向进行动画处理。 SpriteKit 会让这一切变得非常简单。 【参考方案1】:有一个方法可以使用:scrollToRowAtIndexPath:atScrollPosition:animated:
这里是文档的链接: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableView_Class/index.html#//apple_ref/occ/instm/UITableView/scrollToRowAtIndexPath:atScrollPosition:animated:
【讨论】:
【参考方案2】:您可以使用scrollToRowAtIndexPath
并将其与UIView
的animateWithDuration
方法结合使用
var indexPath = NSIndexPath(forRow: rowNumberHere, inSection: 0)
self.tableview.scrollToRowAtIndexPath(indexPath,
atScrollPosition: UITableViewScrollPosition.Bottom, animated: true)
您还可以使用计时器每次滚动到下一个单元格,当您到达最后一个单元格时,您可以逐个单元格滚动到顶部。
var timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: Selector("roll"), userInfo: nil, repeats: true)
func roll()
// scroll to next row until we reach the last cell, in that case scroll back until reach the first cell
This SO question 可以提供帮助,但它在 Objective-C 中
【讨论】:
以上是关于Swift:Xcode tableView 无限滚动的主要内容,如果未能解决你的问题,请参考以下文章
Swift,Tableview 约束行为不正常 - Xcode 9
关于重新排序 tableView 的问题(Apple Swift 和 Xcode 11)
从选定的 TableView Cell Swift Xcode 传递 var
如何在 Swift Xcode 6.4 的 TableView 中显示 Parse 数组