2015-08-12 12 views
3

Я внедрил табличный вид в мой виджет сегодня. В таблицеView нет фиксированного количества ячеек. Из-за этого высота виджета должна динамически меняться. Кто-нибудь знает, как я могу узнать высоту таблицыView? Если я знаю высоту tableView, я могу использовать ту же самую высоту для сегодняшнего виджета. Или есть лучшее решение?Динамический размер виджета сегодня виджет

Мой код:

var preferredViewHeight:CGFloat{return 132} 

override func viewWillAppear(animated: Bool) { 

    super.viewWillAppear(animated) 
    self.tableView.reloadData() 
    updateSize() 
} 

func updateSize() { 

    var preferredSize = self.preferredContentSize 
    preferredSize.height = self.preferredViewHeight 
    self.preferredContentSize = preferredSize 
} 

func widgetPerformUpdateWithCompletionHandler(completionHandler: ((NCUpdateResult) -> Void)!) { 

    self.tableView.reloadData() 
    completionHandler(NCUpdateResult.NewData) 
} 
+0

Вы хотите вычислить общую высоту стола? вы можете добиться этого, используя 'tableView.contentSize' –

+0

Он работает. Если вы опубликуете его в качестве ответа, я могу отметить его как правильное. – paro

ответ

2

вы можете добиться того, что с помощью tableView.contentSize это покажет вам полный размер содержимого таблиц.

+0

Не могли бы вы дать более подробную информацию о том, как использовать 'tableView.contenSize'? – AziCode