Форум программистов, компьютерный форум CyberForum.ru

Ячейки, динамически меняющие размер - Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование iOS/iPhone Сравнение элементов массива http://www.cyberforum.ru/ios-dev/thread1168773.html
Есть массив с именами файлов NSArray *fileList = initWithObjects: @"1.pdf", @"2.png", @"1.png", @"1.jpg", @"1.doc", nil]; Вопрос, как из этого массива выбрать элементы с расширением картинок (png и jpg) и поместить их в другой массив, imageArray? Интересует вопрос как сравнивать элементы такого массива, что бы сравнивалось только расширение
Программирование iOS/iPhone Просмотр картинок, кнопки back, forward Здравствуйте. Интересует вопрос как сделать перелистывание картинок? Все картинки находится в одной папке, как сделать, что бы при нажатии на кнопку forward, на тулбаре, открывалась следующая картинка, при этом в папке могут быть не только картинки, но и другие файлы, которые открывать в imageView не нужно. Добавлено через 3 часа 36 минут Переключение картинок я уже сделал, через массивы.... http://www.cyberforum.ru/ios-dev/thread1167811.html
Остановка потоков при закрытии приложения Программирование iOS/iPhone
Всем привет! У меня есть класс, который в методе init запускает поток, который опрашивает состояние подключённого устройства и посылает уведомления подписчикам. -(id)init { //... ; } Как можно приостановить созданный поток, когда приложение закрывается (при получении viewDidDisappear, например) и возобновить, когда запускается?
Создание папки NSFilemanager Программирование iOS/iPhone
Здравствуйте. Как создать папку в FileManager? И как сделать сортировку по типу, сначала папки а потом файлы?
Программирование iOS/iPhone Ищу API Яндекса для вывода списка организаций http://www.cyberforum.ru/ios-dev/thread1166524.html
Делаю прогу под IOS. Надо вывести справочник организаций вот как тут. Не могу найти подходящее апи. Может кто работал с этим и подскажет правильное апи.
Программирование iOS/iPhone Получение списка путей к фотографиям девайса Привет! Помогите плиз на objective реализовать получения путей к фоткам телефона. Нужно получить массив с путями. В objective я нуб. На Jave для дройда делал так public class PhotoPaths { private static PhotoPaths sInstance; //private static String TAG = "PhotoPaths"; public static PhotoPaths instance() { if (sInstance==null) подробнее

Показать сообщение отдельно
kievkao
42 / 42 / 2
Регистрация: 22.11.2012
Сообщений: 225

Ячейки, динамически меняющие размер - Программирование iOS/iPhone

07.05.2014, 16:36. Просмотров 587. Ответов 0
Метки (Все метки)

Всем привет!

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

Есть CollectionView (iPhone), в которой находятся раскрывающиеся по клику ячейки. Конкретнее - при клике на ячейку она увеличивается в длину, открывая свои дополнительные поля. При повторном клике, соответственно, сжимается обратно.

Дополнительных полей у ячейки может быть много. Но, если модель данных не предоставляет информации для каких-то полей - то эти поля не отображаются, сокращая тем самым высоту раскрытой ячейки.

Как я реализовал этот функционал:
1) Для открытия/закрытия я нарисовал ячейку со следующей иерархией:
topViews
additionalViews (где находятся все дополнительные поля)
bottomViews

У topViews и bottomViews задан constraint height, а у центрального - нет.
После того, как на ячейку кликнули первый раз (открыли) - я в методе sizeForItemAtIndexPath для нее возвращаю высоту == сумме высот всех трех групп View.
Когда же ее закрыли - то возвращаю только сумму высот topViews и bottomViews, и в этом случае additionalViews, как не имеющая констрейнт высоты - сжимается до нуля.

2) Для уменьшения/увеличения размера ячейки, в зависимости от кол-во требуемых полей для отображения:
Провел аутлеты от каждого констрейнта высоты каждого поля.
В sizeForItemAtIndexPath проверяю - если в модели данных инфа для конкретного поля отсутствует, я отнимаю от результирующего CGSize.height значение констрейнта для этого поля, и устанавливаю этот констрейнт в ноль.

В результате все работает, но консоль прямо горит от разных ворнингов на тему "Unable to simultaneously satisfy constraints.". Неприятно((

Что вы скажете о моем подходе? Он неправильный в корне, и надо искать пути с другой стороны, или, в принципе, нормально, но просто где-то что-то немного не сходится, провоцируя эти самые "Unable to simultaneously satisfy constraints."?

Спасибо всем кто прочитал, а особенно - высказал свое мнение по поводу моей реализации.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru