2015-11-05 2 views
2

У меня есть UITableView, в котором я добавил UIButton. Проблема в том, что она отображается только в верхней части заголовка. Как я могу добавить кнопку во всех заголовках раздела, чтобы я мог сделать раздел интерактивным?Заголовок интерактивной секции UITableView

Вот код для добавления кнопки на заголовок раздела с UITableView

func tableView(tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) { 
    let header: UITableViewHeaderFooterView = view as! UITableViewHeaderFooterView 
    header.contentView.backgroundColor = UIColor(red: 255/255, green: 200/255, blue: 20/255, alpha: 1.0) // Just some random color 
    header.textLabel!.textColor = UIColor.whiteColor() 
    let btn = UIButton(type: UIButtonType.Custom) as UIButton 
    btn.frame = CGRectMake(header.frame.width - 62, 0, 50, 50) 
    btn.addTarget(self, action: "pressed:", forControlEvents: .TouchUpInside) 
    btn.setTitle("Direction", forState: .Normal) 
    btn.setTitleColor(UIColor.whiteColor(), forState: .Normal) 
    header.contentView.addSubview(btn)  
} 

Может кто-нибудь сказать мне, как добавить интерактивную кнопку на каждом участке?

ответ

2

Вы должны использовать этот делегат

optional public func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? 

настроить раздел headerview из Tableview

func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? 
{ 
    let header: = UIView() 
    let btn = UIButton(type: UIButtonType.Custom) as UIButton 
    btn.frame = CGRectMake(header.frame.width - 62, 0, 50, 50) 
    btn.addTarget(self, action: "pressed:", forControlEvents: .TouchUpInside) 
    btn.setTitle("Direction", forState: .Normal) 
    btn.setTitleColor(UIColor.whiteColor(), forState: .Normal) 

    header.addSubview(btn) 
    return header 

} 
+0

Есть ли какие-либо возможность расширения разделов. Когда я попытался добавить это, я не могу видеть заголовок раздела. –

0

вы можете просто использовать этот делегат метод Tableview:

optional public func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? 
Смежные вопросы