我正在使用UISearchBar搜索我的表格。我的问题是,一旦我搜索某些东西,UISearchBar就会创建一个新的tableview作为覆盖搜索结果,这个新表基本上没有任何属性(没有背景,分隔符插入,一切都是白色等)。如何自定义此新表视图(使其看起来像之前的那个)。我找不到任何可以访问它的功能,以便为其提供属性,例如背景颜色左右。
是否有可用于自定义视图的功能?我正在使用这个函数,至少单元格的高度是相同的:
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 90
}
以下屏幕截图最能说明我的问题。
答案 0 :(得分:0)
更新tableView的背景视图,如下所示,
tableView.backgroundColor = UIColor.red()
或
tableView.backgroundView = UIView()
tableView.backgroundView.backgroundColor = UIColor.red()
答案 1 :(得分:0)
经过几个小时的努力,好吧找到了解决方案。以下两个函数帮助我自定义新表视图的单元格,这些单元格放在我的旧表格视图上。我不知道willDisplay
函数,但它的工作原理应该如下:
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 90
}
override func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
if(searchActive){
cell.backgroundColor = UIColor.clear
tableView.backgroundView = UIImageView(image: UIImage(named: "darkBackground"))
tableView.separatorStyle = .none
}
}