Я новичок в разработке приложений ios и задаю общий вопрос о дизайне приложений, касающихся отзывчивости пользовательского интерфейса. Должен ли всегда существовать отдельный поток для работы с материалом UI? Например, я работаю над простой игрой, которая всегда должна обнаруживать жесты пальцев, кроме того, что происходит постоянная работа, например, обновление экрана с помощью движущихся объектов и их анимация (хотя блокирующих вызовов нет). Приложение, как правило, работает хорошо, но я заметил, что иногда он не обнаруживает жест жестов и задается вопросом, является ли причиной то, что я делаю все в основном потоке.ios app design для отзывчивого UI
Должен ли я обрабатывать жесты салфетки в основной нити и делать все остальное в отдельной теме? Как насчет анимации, должна ли каждая анимация иметь собственный поток? А также о циклах запуска, лучше в этом случае нить или цикл запуска? (Я все еще запутался, где использовать runloops даже после прочтения некоторых материалов об этом в Интернете)
Вы можете обновить интерфейс только в основной теме. Вычисление может производиться в другом потоке, но обновление UI не выполняется. – Larme
Чтобы обновить интерфейс, я использую периодические таймеры, означает ли это, что таймеры также будут в основном потоке? и как быть с обработчиками жестов, если они будут обрабатываться в отдельном потоке (а не в основном потоке)? – comatose