我有UITableView
个自定义单元格。我希望第一行始终可见。由于我只有一段,我想过制作一个标题,但在这种情况下,我真的不知道怎么做?
是否可以使用相同的手势识别器从第一行创建标题,行后面的相同dataSource,简单地说,标题与第一行完全相同,就好像该行被压缩到tableView的顶部一样?
答案 0 :(得分:1)
您应该在表格视图外使用标题或单独的视图。您可以使用相同的手势(通常,但不是删除)和数据源。
如果你想要它,你可以使用2个表视图 - 第一个包含一个部分和一个行,第二个包含所有其他数据。如果您的数据源在视图控制器中以类似的方式分解,那将是最简单的。
在任何一种情况下,你都可以达到你想要的效果,但不是通过轻弹开关,你需要添加一些逻辑和不同的视图来实现它。
答案 1 :(得分:1)
如果您想制作一个固定在顶部的静态单元格,但在其他方面与其他单元格相同,您只需在numberOfRowsInSection
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return dataSource.count + 1
}
然后,当您显示单元格时,请检查行号并始终将第一行设置为包含静态标题内容。
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
if indexPath.row == 0 {
// Create or set static cell content.
}
}
另一种方法是创建自定义节标题并使用viewForHeaderInSection
override func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
if section == 0 {
var view = UIView()
view.backgroundColor = UIColor.blueColor()
return view
}
return nil
}