Swift, как преобразовать пользовательский массив в массив enum

Я не пробовал это, но я думаю, что это сделало бы это:

i %= list.Length;
int index = i;
do {
  index %= list.Length;
  sb.AppendFormat("{0} ", list[index]);
while (++index != i);
0
задан Simon_S 18 January 2019 в 14:38
поделиться

1 ответ

Я должен исправить свой комментарий сверху. Ваш dataView должен быть типа [TableSection: [Category]].

Теперь несколько слов о вашей setData функции. В вашем цикле вы используете оператор объединения нулей ?? при инициализации категории. Может быть, я что-то упустил, но я не вижу, как это может привести к фатальной ошибке. В категории нет сбойного инициализатора. Сейчас я точно не знаю, что такое datas и откуда оно берется, но если некоторые из свойств там являются необязательными, я бы рекомендовал сделать их необязательными и в категории.

Затем попробуйте поработать с map для преобразования ваших данных. Вот пример:

var dataView = [TableSection: [Category]]()
var dataViewLoop = (0 ..< 10).map { i -> Category in
  let status = i % 2 == 0 ? "confirmed" : "request"

  return Category(clientName: "\(i)", appType: "\(i)", appDateTime: "nil", status: status, photo: nil)
}

dataView[.appointments] = dataViewLoop.filter({ [110].status == "confirmed" })
dataView[.requests] = dataViewLoop.filter({ [110].status == "request" })
0
ответ дан ergoon 18 January 2019 в 14:38
поделиться
Другие вопросы по тегам:

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