Подкласс UItableViewCell с несколькими легендами и метками - PullRequest
0 голосов
/ 28 февраля 2012

Я знаю, что этот вопрос задавали много сотнями разных способов (и это только на этом сайте).Но я изо всех сил пытаюсь собрать все части воедино.

Я бы хотел, чтобы каждый UITableViewCell выглядел следующим образом:

enter image description here

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

Я пытался сделать это, используя Interface Builder, но на самом деле не понимаю автоматического изменения размера.Хотя я рад сделать это в коде.

Кто-нибудь знает, как это сделать, или, по крайней мере, есть хорошие ссылки на учебники, исходный код и т. Д.?

Ответы [ 2 ]

0 голосов
/ 28 февраля 2012

Помещение полного представления таблицы внутри ячейки: crazytalk .Может быть, кто-то заставил его запустить его - это не значит, что это лучшая практика или хорошая практика.

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

При этом, если вы настаиваете на том, чтобы положить все яйца в эту корзинутогда я думаю, что вам нужно будет реализовать ячейку табличного представления в IB, записать детали для всех измерений фрейма метки контента, а затем во время выполнения использовать один из методов sizeWithFont:constrainedToSize: NSString, чтобы определить, насколько большими будут ваши метки.,Сделай их такими большими.Затем из этих данных вычислите высоту вашей ячейки и верните это значение из табличного представления tableView:heightForRowAtIndexPath:.Вот как я реализовал эту функциональность в приложении несколько лет назад.(Честно говоря, я не уверен, что он все еще работает.) Возможно, есть некоторые более эффективные методы определения размера метки в CoreText, я не смотрел.

Лучше было бы ограничить себяограничение длины текста, которое вы можете поместить в каждую метку.Тогда вы можете просто определить метки статически и использовать ячейку постоянного размера.Собрать его вместе в IB не сложно.Просто выложите все и убедитесь, что вы создаете соединение IBOutlet и XCode / IB для каждого объекта, которым вы хотите манипулировать в коде.

Удачи!

0 голосов
/ 28 февраля 2012

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

В этом руководстве вы узнаете, как его настроить.

http://iosstuff.wordpress.com/2011/06/29/adding-a-uitableview-inside-a-uitableviewcell/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...