如何使 UITableView 内容围绕中心点滚动
Posted
技术标签:
【中文标题】如何使 UITableView 内容围绕中心点滚动【英文标题】:How to make UITableView content scroll around a central point 【发布时间】:2017-02-20 02:48:03 【问题描述】:我试图弄清楚如何使 UITableView 的内容围绕屏幕两侧的两个条包含的区域“居中”,以便它适用于所有屏幕尺寸的设备。我的意思是:
视图的初始状态应该是该区域内的第一个单元格 表格视图应该能够滚动,直到最后一个单元格位于该区域内 如果单元格仍在屏幕上,它们不应消失围绕表格视图的内容偏移和插入,以及调整表格视图的框架,我尝试了许多不同的方法,但我不可避免地要么插入错误,要么最终导致单元格在它们离开屏幕之前消失.
我想知道这是否完全是错误的方法,或者我的设置组合不正确。
任何提示将不胜感激!
【问题讨论】:
【参考方案1】:以下对我有用:
//In viewDidLoad, etc...:
self.edgesForExtendedLayout = UIRectEdgeNone;
self.automaticallyAdjustsScrollViewInsets = YES;
override func viewDidLayoutSubviews()
super.viewDidLayoutSubviews()
let inset = (self.tableView.frame.size.height - 44) / 2.0 // Figure out your bar size here
self.tableView.contentInset.top = inset
self.tableView.contentInset.bottom = inset
let path = NSIndexPath(row: 0, section: 0) as IndexPath
self.tableView.scrollToRow(at: path, at: .middle, animated: false)
【讨论】:
以上是关于如何使 UITableView 内容围绕中心点滚动的主要内容,如果未能解决你的问题,请参考以下文章
如何使 UITableView 与大标题 VoiceOver 兼容?