我尝试为TableViewHeader设置透明背景但没有成功。 首先,想知道它是否可能?
这就是我所做的
func tableView(tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) {
let header: UITableViewHeaderFooterView = view as! UITableViewHeaderFooterView
header.contentView.backgroundColor = UIColor.clearColor()
}
我的最终目标是在我的uitableview下添加一个UIView,它将托管一个GMSMapView并拥有一个大小为100px的透明HeaderView。
有任何帮助吗? 感谢
答案 0 :(得分:4)
您需要执行以下步骤
故事板中的1)将headerfooterview添加到tableview
2)在视图中加载写入代码
tableView.registerClass(HeaderView.self, forHeaderFooterViewReuseIdentifier: "HeaderView")
headerView = tableView.dequeueReusableHeaderFooterViewWithIdentifier("headerView") as? HeaderView
3)添加tableview委托方法
func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 110;
}
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
headerView.backgroundColor = UIColor.clearColor()
return headerView;
}
希望这会对你有所帮助
答案 1 :(得分:2)
要遵循的步骤:
1)将UIView从对象库拖放到tableview的顶部以生成tableview标题。
2)在Tableview控制器中创建视图的IBOutlet。
3)最后调用这个UITableview委托方法
override func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
yourHeaderView.backgroundColor = UIColor.clearColor()
return yourHeaderView
}
//当你需要制作一个透明的页脚视图时调用它
override func tableView(tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
footerView.backgroundColor = UIColor.clearColor()
return footerView
}
答案 2 :(得分:0)
//为了透明你的表格视图部分标题:
//在 Swift 5 中
func tableView(_ tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) {
view.tintColor = UIColor.clear
}