2015-09-06 2 views
0

У меня есть таблица среднего размера, которая отлично работает, за исключением анимации вставки строки (withRowAnimation). Я обогнал его (с помощью сообщества стека), чтобы иметь больше времени, чем исходная системная анимация, и он работает просто отлично, но ...Пользовательская ячейка таблицы без dequeueReusableCellWithIdentifier в Swift

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

Итак, единственное решение, которое я вижу, - это прекратить повторное использование. Я знаю, что это будет мешать памяти, но в этом случае останется единственный сценарий (о котором я знаю).

Мой общий вопрос заключается в том, как загрузить пользовательский элементный нить без использования dequeueReusableCellWithIdentifier, чтобы повторного использования не было.

спасибо.

ответ

-1

Вы должны использовать dequeueReusableCellWithIdentifier, не используя это рецепт катастрофы.

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

Я не знаю, что вы анимация/реализация примерно, но вот пример из проекта я написал с помощью пользовательских ячеек:

В каждой ячейке я добавил кнопки, это может быть 1, 2, 3 ,. .. кнопки. Если бы я ничего не сделал в повторно используемой ячейке, у меня было бы больше кнопок, чем ожидалось, потому что старые кнопки все равно были бы там ... Итак, в моем коде первое, что я сделал после того, как я выделил ячейку, было бы удалить все кнопки.

let cell = tableView.dequeueReusableCellWithIdentifier("RelatedCell") as! RelatedCell 
cell.removeAllActionButtons() 

где мои removeAllActionButtons (метод в моей пользовательской ячейке) метод будет что-то вроде:

for button in actionButtons { 
    button.removeFromSuperview() 
} 

actionButtons является массив, содержащий все, что кнопки, добавленные в этой пользовательской ячейке

+0

не ответьте на его вопрос. –

Смежные вопросы