2016-06-21 4 views
-1

У меня есть UITableView и у меня есть собственная пользовательская ячейка, содержащая UILabel внутри ячейки.Размер таблицы TableView по отношению к размеру метки

Я хочу увеличить размер таблицы tableView в соответствии с текстом на этикетке. Я использую AutoLayout, и моя метка имеет 20 дополнений слева и 8 дополнений справа, сверху и снизу.

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

+0

обмен кода может помочь – ppaulojr

+0

вы хотите, размер шрифта текста, но и высоту изменения строки, ее возможный, но не хороший 'UI' на моем взгляде – meda

ответ

1

Установите UILabel.numberOfLines в 0 и добавить в свой UITableViewDelegate

func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { 
    return UITableViewAutomaticDimension 
} 

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { 
    return UITableViewAutomaticDimension 
} 
+0

Большое спасибо, сэр .. !! Он работает именно так, как мне хотелось. :))) –

+0

Это не совсем правильно в соответствии с [документацией] (https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/WorkingwithSelf-SizingTableViewCells.html): во-первых, вы можете установить эти значения в представлении таблицы вместо того, чтобы возвращать их из этих методов. Во-вторых, вы должны использовать фактический размер для значения «оцененногоRowHeight» и использовать «UITableViewAutomaticDimension» для фактического 'rowHeight'. –

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