Лучшие практики для реализации отмены-повтора в iPhone

Я пытаюсь разработать приложение для iPhone (демонстрационный проект), используя target-C, который может применять несколько фотографических эффектов к изображениям.

Приложение запущено и работает, но я подумал о реализации функций "отменить" и "повторить" в пользовательском интерфейсе. Я успешно закодировал один уровень отмены повторения, то есть один шаг назад или вперед с легкостью. Но концепция усложняется, если включить несколько уровней отмены и повтора действий. Это становится особенно мрачным, когда пользователь отменяет последовательность шагов, а затем начинает выполнять что-то еще. Чем больше штатов я пытаюсь спасти, тем больше я заблуждаюсь.

Я хотел бы знать, существует ли стандартная лучшая практика для реализации такого рода действий. Любая архитектура или структура, которую я должен использовать? Какова общепринятая процедура для этого? Буду признателен за любые общие рекомендации по оптимизации этого метода.

Пожалуйста помоги.

1 ответ

Все зависит от того, как вы обрабатываете ваше изображение.

Если вы играете с изображениями, вы можете использовать NSUndoManager, где вы можете отслеживать обработку изображений.

В противном случае вы можете отслеживать массив действий, выполняемых над вашим изображением, это менее предпочтительно.

Но все зависит от ваших требований и от того, как вы обрабатываете свой образ,

Важной вещью, о которой нужно позаботиться, является ваша память в таких действиях.

Если вы хотите повторно использовать свои действия при следующей загрузке приложения, вы можете использовать NSKeyArchiever.

Другие вопросы по тегам