Редактирование PKDrawing в PencilKit
Когда вы используете PencilKit в iOS 13/iPadOS, как вы меняете содержимое в PKDrawing? Например, могу ли я пройти через все линии и изменить цвет или ширину линий? Или для выбранных линий (через лассо)? Или даже отменить / повторить (если инструменты не показаны и нам нужно это реализовать)?
1 ответ
PKDrawing указан как непрозрачный объект данных. Смотрите эту ссылку в Википедии для объяснения непрозрачного объекта данных. К сожалению, удары не подвергаются нам. Наши только 2 варианта в настоящее время можно найти в документах в разделе " Изменение чертежа". В основном мы можем только применить преобразование или добавить рисунки в текущем API. В демонстрации Apple они показывают, как реализовать отмену с помощью метода добавления. Если вы скачаете демо, см. func setNewDrawingUndoable(_ newDrawing: PKDrawing)
чтобы увидеть, как вы можете выполнить отмену.
Вы можете установить встроенные селекторы undo:
а также redo:
первому респонденту View Controller.
У WWDC 19 есть демонстрационный пример, который делает это в самой раскадровке. Вот вам ссылка:https://developer.apple.com/documentation/pencilkit/drawing_with_pencilkit