Внедрите систему, аналогичную тому, как UITableView деактивирует ячейки, уже созданные

Мне нужно реализовать сетку для отображения некоторых объектов вида на iPad. Чтобы получить максимальную отдачу от SDK, я думал, что буду использовать UITableView для отслеживания моих строк, а затем реализовать какой-то перечислитель, чтобы вернуть правильные столбцы для ввода в мои ячейки.

Перечислитель отлично работает. Я просто передаю tableViews viewController одномерный массив, и перечислитель разбивает его на «псевдо двумерный набор», однако я хотел бы сделать сетью подход, подобный UITableViews для обеих строк и столбцов:

[tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

Поскольку теперь я создаю количество представлений столбцов, необходимых для каждой строки, и добавляю их вручную в ячейку в cellForRowAtIndexPath:

Я хотел бы сделать метод, называемый:

 columnsForRowAtIndexPath: 

и он работает как cellForRowAtIndexPath..

Итак, вопрос в том, как tableView избегает инициализации моих ячеек снова и снова и как я могу реализовать подобное поведение?

Я не могу понять, будет ли tableView копировать ячейки или создавать новые, используя NSCoding, чтобы возвращать ячейки с минимальными накладными расходами. Угадать NSMatrix было бы очень приятно иметь в iOS.

One Solution collect form web for “Внедрите систему, аналогичную тому, как UITableView деактивирует ячейки, уже созданные”

Похоже, вы уже ответили на свой вопрос, но, чтобы подтвердить ваше подозрение, обычно вы сначала NSMutableSet извлечь объект из NSMutableSet с помощью [myCache anyObject] . Если вы успешно извлечете объект таким образом, обязательно удалите его из набора, чтобы он снова не схватился. С другой стороны, если -anyObject возвращает nil , то в кеше недостаточно кэшированных объектов для того, что вам нужно, поэтому вам нужно создать новый (и убедитесь, что вы вернули его в кеш, когда закончите ).

Это всего лишь один из способов добиться того, что вы стреляете.

Имеют смысл?

  • Внутренняя консистентность UIScrollView
  • Как скрыть UITableViewSections в Swift?
  • Динамическое изменение размера UITableView в UIViewController, созданное в Storyboard
  • UITableView scrollToRow не работает в ios 11
  • Получение ошибки из Xcode, которая не находится в Интернете, связанной с указателем
  • Получить из базы данных базы данных огней
  • Ячейка просмотра таблицы маскирует только после прокрутки, а затем назад
  • Как получить заголовок заголовка раздела при выборе ячейки
  • Каков наилучший способ обеспечения перезагрузки UITableView?
  • UITableview в UITableviewcontroller - cellforrowatindexpath не вызван при перезагрузке
  • touchesEnded: withEvent: не вызывается из моего UIView, который находится поверх UITableView
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.