2013-11-09 3 views
0

У меня было некоторое UITableViewCells, которое я добавлял в UITableView, но структура страницы изменилась, поэтому теперь мне нужно добавить их в UIView. (Я уверен, что это большой красный флаг прямо здесь, они идут в один из нескольких UIView, которые появляются при нажатии «вкладок»).Изменение высоты UITableViewCell без heightForRowAtIndexPath

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

Вот мой пример, я обозначил UIViews с красной каймой, поэтому UIView каждая ячейка в правильный размер:

enter image description here

Возможно ли это или я должен просто добавить еще один UITableView внутри UIView, к которому я их перевел?

+0

UITableViewCells предназначены только для использования в UITableView. Если вы хотите добавить их в представление, вы должны преобразовать объект в UIView и просто добавить его в качестве дополнительного представления вашего вида контейнера. –

+0

Есть ли способ конвертировать ячейку в uiview? Или я должен просто конструировать контент по-другому? –

+0

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

ответ

1

Если перемещение ячеек в другой вид - это путь, по которому вы хотите спуститься, это, безусловно, возможно. (Ячейки - это, в конце концов, UIView, как и любой другой). Я попробовал бы просто изменить размер стола Table12Cellили даже поменять ячейку clipsToBounds = NO;, чтобы избежать обрезания, которое вы испытываете при изменении размеров ячеек.

...

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

+0

его огромный проект, который тянет все данные и дизайн из CMS (действительно странно, никогда не испытывал ничего подобного) для создания приложения, и это приводит к странности в том, как работает материал, динамический контент создает ячейки, которые помещаются в табличное представление , ячейки используются в этом виде таблицы как ячейки, но дизайн требует, чтобы эта существующая часть была перемещена в виде с вкладками (как показано на моем снимке экрана) .. так что представление табуляции теперь является uiview внутри tableview. теперь мне нужно поместить ячейки внутри этого uiview внутри tableview. Я пытался избежать uitableview в uiview в uitableview, если бы мог :) –

+0

Звучит очень больно! Не могли бы вы перепроектировать представление табуляции в том же супервизоре, что и tableview, а не вставлять его в самом представлении таблицы? Предполагается ли, что две другие вкладки будут отображать данные, похожие на таблицу? –

+0

Я не думаю, что могу, так как они хотят, чтобы представление табуляции перемещалось так же, как перемещение таблицы перемещается, когда вы вытаскиваете и отпускаете (то есть отскок). Я пытаюсь думать о том, как еще я мог бы это сделать с помощью комбинаций скрытия/отображения uitableviews .. но я не думаю, что могу это сделать, не помещая этот вид таблицы внутри uiview в представление вкладки теперь, когда я думаю об этом. Вот немного объяснения: http://note.io/16QSrzS –

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