Как я могу добавить больше плавающих подразделов в UITableView?

Моя цель - представить древовидную иерархию примерно так:

Building
  Zone
    Floor
      Room

... используя табличное представление.

Для этого проект требует, чтобы каждый уровень дерева был встроен как собственный Section.

.plain UITableView ограничен, так как поддерживает только один плавающий раздел. Дальнейшие исследования привели меня к созданию собственного пользовательского SectionView и размещению его чуть ниже панели навигации.

Я также разработал стратегию, помечая определенные rows как мои фальшивые разделы, и игра с scrollViewDidScroll также кажется правильным направлением.

Но теперь я озадачен тем, как выполнить отслеживание местоположения определенных ячеек section, упорядочив их, чтобы они плавали соответствующим образом, и правильно анимировать прокрутку через перекрытие каждого раздела уровня.

Чтобы уточнить, в моем примере ниже прокрутка должна складываться следующим образом:

Building <section>
Zone(s)  <sub-section>
Floor(s) <sub-section>
 Room(s) <rows>

введите здесь описание изображения

Другие форматы дерева также должны поддерживаться:

Building <section>
  Zone 1 <section>
    Room <rows>
  Zone 2 <section>
    Room <rows> 


Building <section>
    Room <rows>

Таким образом, древовидная структура не является фиксированной.


person Sebastian Dwornik    schedule 04.04.2018    source источник