iOS - Являются ли UITableViewCell reuseIdentifiers глобальными? - PullRequest
8 голосов
/ 23 марта 2012

Какова область действия идентификаторов повторного использования ячейки табличного представления - они совместно используются в одном экземпляре табличного представления или во всех табличных представлениях, которые используют один и тот же идентификатор повторного использования?

Например, у меня есть FooTableViewController иBarTableViewController, оба имеют tableView, и оба используют идентификатор @ "Cell" в tableView: cellForRowAtIndexPath, но свойства / стиль ячейки различны.Вопрос в том, будут ли эти ячейки повторно использоваться в представлениях таблиц или нет?

Ответы [ 2 ]

7 голосов
/ 23 марта 2012

Они никогда не разделяются между экземплярами.

Объект UITableView поддерживает очередь (или список) текущих многократно используемых ячеек, каждая со своим собственным идентификатором повторного использования, и делает их доступными для делегата вthe dequeueReusableCellWithIdentifier: method.

(из [UITableViewCell reuseIdentifier] документов)

Акцент на "объекте UITableView".

Однако вы должны сделать идентификаторы вашей ячейки более наглядными,Различный идентификатор для каждого типа ячейки, который вы используете.Ваш код будет более читабельным.

6 голосов
/ 23 марта 2012

Они будут использоваться только в одном UITableView, они никогда не будут переданы.Каждый UITableView имеет свой «пул» многократного использования UITableViewCells

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