NSTableView обнаружить строку прокрутки выключен
У меня есть основанный на представлении NSTableView, и каждая строка должна генерировать несколько изображений, что занимает много времени. Это делается на фоне NSoperationQueue и запускается, когда делается запрос на изображение (через привязку).
Когда строка прокручивается за пределами экрана, если операция NSO еще не завершена, я бы хотел отменить ее, но мне нужно определить, когда строка больше не видна. Должен ли я искать delloc в моем CustomTableRowView, CustomTableCellView или что-то еще?
Я предполагаю, что мне нужно противоположность tableView:willDisplayCell:forTableColumn:row:
Что-то вроде tableView:willHideCell:forTableColumn:row:
У Apple TableView Playground есть комментарий:
// Мы должны будем отслеживать блок с помощью NSBlockOperation, если мы хотим позже поддерживать отмену операций, которые прокручивались за пределами экрана и больше не нужны. Это будет оставлено пользователю в качестве упражнения.
Я могу отменить операцию, но я не уверен, как определить, когда строка прокручивается.
1 ответ
Я считаю, что это решается с помощью
tableView:didRemoveRowView:forRow:
хотя я не уверен, вызывается ли он сразу после прокрутки строки или через некоторое время.