хтось знає, чи можна скасувати події, що вже вибудовуються в черзі, з стека подій або стека таймера (або будь-якого механізму, який використовується API) під час дзвінка performSelector:withObject:afterDelay
?
Я використовував цей стек подій, щоб змінити атрибути зображення на вкладці TabBar, і іноді в черзі до 10 секунд варто зміни, які швидко виконуються для циклу ... можливо, 5 мілісекунд або близько того.
проблема виникає, якщо користувач перемикає вкладки ... як скажімо, у мене внесення змін до черги для зображення, яке відображається, як тільки ввімкнено вкладку №4, а потім користувач швидко переходить на вкладку №3, а потім знову на вкладку # 4 ... це призведе до повторної черги ще на 10 секунд, варто змінити, коли стара черга все ще грала, ймовірно, приблизно 2 або 3 секунди до черги, якщо переключитися досить швидко ..., але навіть приїхавши о 5 секунд до потік був проблемою.
тому мені знадобився якийсь спосіб скасувати старий стек змін, перш ніж ставити новий стек ...
Я пишу цей запит у минулому часі, тому що я вже придумав альтернативне рішення цієї проблеми, додавши фільтр подій з яструбими очима на функцію відтворення. однак мені все одно цікаво, чи можливо скасування події, тому що я маю відчуття, що такі знання стануть у нагоді в майбутньому. дякую за надану допомогу :)