Understanding a Drag Item as a Promise

Panther·2021년 8월 3일
0
post-custom-banner

https://developer.apple.com/documentation/uikit/drag_and_drop/understanding_a_drag_item_as_a_promise

"Use drag items to convey data representation promises between a source app and a destination app."

소스 앱과 대상 앱 사이에서 데이터 표현 규약을 전달하기 위해 드래그 아이템을 사용합니다.

Overview

사용자가 앱에서 사진, 지도 위치, 캘린더 이벤트, 텍스트 선택과 같은 아이템을 화면에 나타나는 시각적 표현을 드래그하면, 앱은 기초 데이터와 드래그 아이템을 연관시킵니다. 드래그 아이템은 순서대로 아이템 프로바이더를 사용합니다. 앱은 아이템 프로바이더의 registeredTypeIdentifiers 배열을 유니폼 타입 아이덴티파이어(UTI)로 채웁니다.

UIT의 배열은 요청에 따라 대상 앱에 전달할 수 있는 특정 데이터 표현에 대한 소스 앱의 규약을 구성합니다. 규약은 앱이 드래그 아이템을 구성하는 시점에 특정 데이터 표현을 제공할 것을 커밋함을 의미합니다. 이 시점은 아직 생성을 위한 작업 수행 전입니다. 사용자에게 나타나는 모습은 아이템 자체가 드래그되는 것처럼 나타나지만, 드래그 아이템은 화면에서 사용자의 터치 포인트 아래에 남아있는 프리뷰 이미지를 따라 규약으로 구성됩니다.

드래그 아이템을 구성하는 앱의 일부분은 드래그 상호작용 딜리게이트(UIDragInteractionDelegate)입니다. 대상 측면에서 앱의 드롭 상호작용 딜리게이트(UIDropInteractionDelegate)는 규약 데이터를 소비하기 위해 드래그 아이템과 상호작용합니다.

아래 테이블은 드래그 아이템을 구성과 소비를 지원하기 위해 구현해야 하는 프로토콜을 나타냅니다. 이는 앱에서 소스 혹은 대상이 되는 뷰에 따라 달라집니다.

Drag-anddrop RoleProtocolYour implementation
Source appNSItemProviderWritingRegister UTIs
Destination appNSItemProviderReadingRequest items

다음 클래스는 자동으로 이 프로토콜을 지원합니다. NSString, NSAttributedString, NSURL, UIColor, UIImage입니다.

See Also


First Steps

Making a View into a Drag Source

드래그를 위한 아이템 제공을 위해 드래그 상호작용 API를 채택합니다.

https://developer.apple.com/documentation/uikit/drag_and_drop/making_a_view_into_a_drag_source
https://velog.io/@panther222128/Making-a-View-into-a-Drag-Source

Making a View into a Drop Destination

드래그된 컨텐트를 선택적으로 소비하기 위해 드롭 상호작용 API를 채택합니다.

https://developer.apple.com/documentation/uikit/drag_and_drop/making_a_view_into_a_drop_destination
https://velog.io/@panther222128/Making-a-View-into-a-Drop-Destination


post-custom-banner

0개의 댓글