Это требует творческого мышления. У меня была похожая проблема, когда мне нужно было прервать рендеринг мозаичного слоя в середине цикла. То, как я работал над этим, довольно сложно, но, кажется, работает достаточно хорошо. Это включает в себя упаковку вызовов отрисовки в мозаичный слой внутри NSThread
. Потоки имеют isFinished
bool, который вы можете наблюдать по значению ключа, чтобы узнать, когда плиточный слой завершил рендеринг.
Если вас не устраивает многопоточность в iOS, это может быть больше проблем, чем стоит, но даст вам преимущество в том, что вы узнаете, когда закончится рендеринг, а также сможете отменить операцию потока (и, следовательно, рендеринг). ) если требуется.