我有一个UIViewController
同时实现了UITableViewDelegate
和UITableViewDataSource
,我希望将屏幕稍微向下滚动(从第二个单元格开始)。在这种情况下,我尝试使用硬编码高度将tableView.contentOffset
设置为CGPointMake
,这与我在我的单元格的Storyboard中设置的值相同。
但是,我想动态读取高度。在我的表视图中,每个单元格都具有相同的大小,如果在我的控制器中我有UITableView
实例,我怎样才能得到它的高度?
这是我的代码:
@IBOutlet var tableView: UITableView!
override func viewDidLoad() {
// Here instead of 88.0 I wanted something like tableView.cellHeight.
// Is there something like it? Anyone?
tableView.contentOffset = CGPointMake(0.0, 88.0)
}
答案 0 :(得分:3)
您正在寻找的属性称为rowHeight
。所以要求tableView.rowHeight
。
以下是UITableView文档:
他们在这些情况下非常有用。
然而,我并不相信这是你真正需要的;这取决于你的意思"我想稍微向下滚动屏幕。"
答案 1 :(得分:0)
如果您使用静态UITableView
单元格:
var height = tableView.rowHeight
如果您有动态单元格,则必须使用indexPath从UITableViewDelegate
获取动态单元格,在您的情况下,使用UIViewController
:
var indexPath = NSIndexPath(row: yourRow, section: yourSection)
var height = tableView(tableView, heightForRowAtIndexPath: indexPath)
如果您设置了estimatedRowHeight
,您还可以检查该变量(但如果您没有,则会为零):
var height = tableView.estimatedRowHeight