Простой способ построить демонстрацию в приложении, как они делают в Contverbot?
Вопрос
Я хочу сделать небольшую демонстрацию в приложении, как Tapbots делает в ConvertBot. Может быть, есть лучшее решение, чем мое?
Сделайте все программно-контролируемое
Напишите огромный класс с сотнями спектакля.
Демо на самом деле только делает две вещи:
Имитация касания на элементах управления (т.е. программно нажатие кнопок)
Показать пузыри текстовых сообщений, когда это уместно объяснить, что происходит
Как бы вы это сделали?
Решение
Я не думаю, что есть легкий способ достичь этого.
Мое предложение было бы создать класс, который запускает сценарий действий для вас. Сам сценарий может быть таким же простым, как NSArray
Объектов, представляющих шаги в демо, каждое со значениями, такими как текст для пузыря вынятия, а действие / целевое сочетание (для вызова селекторов), задержка и т. Д. Использовать NSButton setHighlighted:
Чтобы моделировать кнопки нажима. Затем ваш класс проходит через массив шагов для проведения демо. Вы можете справиться с этим непосредственно или построить сценарий во время выполнения из файла YAML (или другого формата файла, который вы можете легко редактировать).
Я ожидал, что инвестирование некоторого времени в механизм, подобный таким образом, сделает вашу жизнь намного проще, когда наступит время к) Написать и б) Fine Настройте свою демо, особенно по дороге, когда вы хотите добавить функции. Вы не хотите управлять огромным списком хардкодируемых звонков. И вы можете даже быть в состоянии повторно использовать демо-запускованный код в других проектах.