Доступ к каждому заголовку и элементам управления в виде таблицы в Swift
У меня есть UITableView
с настроенным заголовком. В этом заголовке у меня есть кнопка с изображением.
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let cView = UIView(frame: CGRectMake(0, 0, tableView.frame.size.width, 40))
itemNumBtn = UIButton(frame: CGRectMake(0, 0, 70, 42))
itemNumBtn.setBackgroundImage(UIImage(named: "hide.png"), forState: .Normal)
cView.addSubview(itemNumBtn)
return cView
}
У меня есть пять заголовков.
в отдельной функции, как можно получить изображение каждой кнопки, необходимо получить доступ к каждой кнопке
Пример:
fun getHeader() {
// how to access each header and buttons
var eachBtn = each button in the header
var image = all the images of all header section
}
заранее спасибо
1 ответ
Решение
Чтобы получить button
а также image
от header
Вы можете реализовать индивидуальные UIView
за header
, лайк
class HeaderView: UIView {
var button: UIButton
var image: UIImage
func init() {
...
}
}
И вернуть это HeaderView
в вашем tableView(tableView: UITableView, viewForHeaderInSection section: Int)
Перезвоните.
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
return HeaderView()
}
Тогда используйте tableView.headerViewForSection(section:)
чтобы получить 5 настраиваемых заголовков.
func getHeaders() {
for index in 1...5 {
let header = tableView.headerViewForSection(section: index) as! HeaderView
let button = header.button
let image = header.image
}
}