@dadduUrsa
Вернувшийся кодер недоучка

Что выбрать TableView или CollectionView?

Друзья, выбрал, казалось бы простую тему, на дипломный проект. Хочу сделать справочник/билд для rpg. То есть у нас персонажей как обычно классы, рассы, скилы, оружие и тд. Но тут про скиллы. Вот создал я примерно такую структуру.

enum SkillType {
    case ultimate, additionalUltimate, main, additionalMain, passive
}

struct Skills {
    let skillName: String
    let skillType: SkillType
    let skillDescription: String
    let additionalSkills: [Skills]
}


Теперь мне надо вывести ветку скиллов на экран. Логично это будет сделать через tableView. Единственный способ нашел делать это через section, но тут наступают проблемы: header’ом секции должен быть основной скилл, и основная ульта.
Выглядеть это должно примерно так

Ульта
—-Доп ульта 1
—-Доп ульта 2
—-Доп ульта 3
Основной скил
—-Доп основной 1
—-доп основной 2
—-…
—-Доп основной N
Пассивки

Сделать чтобы скрывались и открывались допы при нажатии на section думаю не проблема. Но мне надо делать так, чтобы я любой скилл мог перетащить на панель скиллов перса. Также нужна возможность активировать или деактивировать определённый скилл (затемнять например), ну если он еще не открыт.
В общем я запутался окончательно. И вот, собственно, несколько вопросов:
1. Правильно ли я сделал структуру скилла? Если бы я делал в SQL то было бы по-другому, но тут не знаю как правильно.
2. Правильно ли я сделал, что выбрал tableVIew или нужно было делать в collectionView?
  • Вопрос задан
  • 113 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы