我试图将图像设置为UITableView
的标题,尽管标题的大小不会调整为图像的大小。基于大量的研究(见我的编辑),我使用的相关代码如下:
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let frame = CGRectMake(0, 0, 300, 150)
let headerImageView = UIImageView(frame: frame)
let image: UIImage = UIImage(named: "reminder3.png")!
headerImageView.image = image
return headerImageView
}
func tableView(tableView: UITableView, estimatedHeightForHeaderInSection section: Int) -> CGFloat {
return 150
}
它将图像添加到页眉,我可以调整页眉的大小,但无论我设置的高度值(当前为300)是什么,它始终保持不变的大小。默认的头大小。我无法调整标题以匹配我的
UIImage
大小。所以,我试着添加这个方法:有人知道一个简单的方法来完成这个任务吗?
最佳答案
您应该改为使用func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat
,如下所示:
let img = UIImage(named: "image")!
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
return UIImageView(image: img)
}
func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
let w = view.frame.size.width
let imgw = img.size.width
let imgh = img.size.height
return w/imgw*imgh
}
仅当您不知道确切的高度时才使用
estimatedHeightForHeaderInSection
,它主要用于确定UITableView的滚动条位置。关于ios - 调整放置在UITableView标题中的UIImage大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34360015/