Добавьте ОДНУ стати c в динамическую таблицу c - PullRequest
0 голосов
/ 29 февраля 2020

У меня есть класс uitableviewcontroller, который динамически отображает таблицу.

Я хочу, чтобы первая строка таблицы была предварительно задана, stati c и всегда одинаковой.

(я хочу, чтобы она имела поведение (+), то есть добавить новую запись в таблицу.)

Как я могу go сделать это?

1 Ответ

1 голос
/ 29 февраля 2020

Возможно, этот трюк поможет вам. Это основа c при создании iOS таблиц:

Похоже, ваши данные находятся в "allConversions":

numberOfRowsInSection {
  return allConversions.count
}

Итак, чтобы создать ячейки, вы делаете это:

cellForRowAt indexPath: IndexPath {
  theRow = indexPath.row
  data = allConversions[ theRow ]
  your cell ... load it up with that data
  return cell
}

Один странный трюк ..

На самом деле добавить 1 к числу возвращаемых строк

numberOfRowsInSection {
  return allConversions.count + 1
}

Так, при загрузке ячейки, Вы фактически вычитаете 1,

cellForRowAt indexPath: IndexPath {
  theRow = indexPath.row
  data = allConversions[ theRow - 1 ]
  your cell ... load it up with that data
  return cell
}

Но! Строка "0" является особенной:

cellForRowAt indexPath: IndexPath {

  theRow = indexPath.row

  // row 0 is special

  if theRow == 0 {
      cell ... your special cell
      return cell
  }

  data = allConversions[ theRow - 1 ]
  your cell ... load it up with that data
  return cell
}

Во многих случаях это так.

Также рассмотрим "заголовок" таблицы

Заголовки таблиц очень раздражают, по разным причинам. Они "просто вид"; они не похожи на ячейки вашего стола; Apple, их расположение абсолютно бесполезно; и они (иногда) не перемещаются.

В некоторых случаях вам нужен заголовок таблицы.

В других случаях вы просто хотите добавить новую строку в таблицу (по какой-либо причине или другой).

Если вы хотите добавить новую, «лишнюю» строку в таблицу, вы просто делаете это, как указано выше - добавляете к счетчику в numberOfRowsInSection, а затем тщательно корректируете номер строки в cellForRowAt.

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