Простая живопись:
Дыхание экрана iPhone рисует временную графику UIView. Эти временные графики стираются после завершения нажатия и затем сохраняются в базовом UIView.Улучшение характеристик окраски пальцев
Процесс прост:
1) Нажмите Запускает & Moves >>
2) Paint Временные графики на верхней UIView >>
3) сенсорный Окончание >>
4) Pass Temporary Graphics В базовый UIView >>
5) В основе UIView добавлена временная графика для сохраненной графики >>
6) Основополагающие UIView Re-Рисует все Хранимые Графика >>
7) удалить временные графики на верхней UIView.
Таким образом, я могу накапливать графику на базовом UIView, сохраняя при этом отзывчивую окраску временной графики на верхнем UIView.
(Sidenote: Каждый «Рисунок» является просто NSArray обычая «Точечные» Объекты, которые только NSObject контейнеры для CGPoints и подстилающей UIView имеет отдельную NSArray, где он хранит эти NSArrays из CGPoints.)
Проблема заключается в следующем:
Когда на базовом UIView накопилось много графики, требуется время, чтобы нарисовать все на экране. И любые новые рисунки в верхнем UIView не будут отображаться до тех пор, пока чертеж базовой хранимой графики не будет завершен. Таким образом, наблюдается заметное отставание, когда многие графики находятся на экране.
Вопрос:
Может кто-нибудь придумать хороший способ повышения производительности здесь, так что не существует заметная задержка между рисунками, когда есть много графики на экране?
Нет, я не использовал NSValue для хранения CGPoints. Я подклассифицировал NSObject и дал ему два члена: xCoord и yCoord, которые являются CGPoints. Фактически производительность не кажется такой плохой, пока экран почти не покрыт графикой. Я не получаю доступ к сохраненной графике до тех пор, пока пользователь не поднимет свой палец (только между рисунками), и в это время я рисую все, что хранится ... Я поддерживаю точки, чтобы я мог отступать и выполнять отмена, когда необходимо. Будет ли C-массив быстрее? – RexOnRoids
Отредактированный ответ на основе комментария. –