2015-01-03 2 views
1

Here's what my application looks like currently.iOS8 Swift - Проблемы динамического изменения размера Tableview клетки

Вы увидите, что, когда субтитр текст метки только одна строка изменяет правильно, но когда есть несколько строк, он получает все перепутались. Я думаю, что это связано с ограничениями, возможно? Прямо сейчас я использую ограничения автоматической компоновки. Вы можете увидеть их на скриншоте. Вот код, который создает мои ячейки.

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> DealCell { 
    let cell = tableView.dequeueReusableCellWithIdentifier("Deal Cell", forIndexPath: indexPath) as DealCell 

    let currentBar = bars[indexPath.row] as BarAnnotation 
    cell.barName.text = currentBar.name 
    cell.deal.text = currentBar.deal 
    cell.distanceToBar.text = String(format: "%.3f mi", currentBar.distance) 

    // Set the height of the table view cells 
    self.tableView.rowHeight = UITableViewAutomaticDimension; 
    self.tableView.estimatedRowHeight = 44.0; 

    return cell 
} 

Любые идеи?

ответ

1

Используйте функцию tableView:heightForRowAtIndexPath: в UITableViewDelegate. Используя это, вы можете индивидуально установить высоту каждой строки отдельно.

Для получения дополнительной информации: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableViewDelegate_Protocol/index.html#//apple_ref/occ/intfm/UITableViewDelegate/tableView:heightForRowAtIndexPath:

Или вы можете использовать настройки автоматической компоновки, как в этой статье. http://useyourloaf.com/blog/2014/02/14/table-view-cells-with-varying-row-heights.html

+0

Это то же самое, что установка высоты при создании ячейки. Я думаю, что мой вопрос должен был быть озаглавлен «Проблемы с ограничениями на динамически измененные ячейки». Проблема заключается в том, что ярлык содержит более одной строки, поэтому он не ограничивается должным образом, как показано на рисунке. – leerob

Смежные вопросы