https://developer.apple.com/documentation/appkit/drag_and_drop
"Support the direct manipulation of your app's content using drag and drop."
드래그 앤 드롭을 사용해 앱 컨텐트를 직접 조작하는 것을 지원합니다.
조금의 프로그래밍으로 커스텀 뷰 객체는 드래그 앤 드롭 기능이 지원될 수 있습니다. 객체는 드래깅 프로콜을 다르는 것을 통해 드래깅 메커니즘의 부분이 될 수 있습니다. 드래그 가능한 객체는 NSDraggingSource
프로토콜을 따르며, 목적 객체(즉 드롭을 받는 객체)는 NSDraggingDestination
프로토콜을 따릅니다. AppKit
은 커서를 추적하는 모든 세부사항과 드래그되는 이미지 표시 모두를 숨깁니다.
Note
iOS 앱에서 드래그 앤 드롭을 채택하는 방법은 Drag and Drop을 살펴보시기 바랍니다.
Drag and Drop
https://developer.apple.com/documentation/uikit/drag_and_drop
https://velog.io/@panther222128/Drag-and-Drop
이미지 뷰에 대한 드래그 앤 드롭 사용 방법을 알아보려면 Supporting Drag and Drop Through File Promises를 살펴보시기 바랍니다. 테이블 뷰에서 드래그 앤 드롭을 사용하려면 Supporting Table View Drag and Drop Through File Promises를 살펴보시기 바랍니다. 컬렉션 뷰에서 드래그 앤 드롭에 대한 예시는 Supporting Collection View Drag and Drop Through File Promises를 살펴보시기 바랍니다. 아웃라인 뷰에 대해서는 Navigating Hierarchical Data Using Outline and Split Views를 살펴보시기 바랍니다.
Supporting Drag and Drop Through File Promises
https://developer.apple.com/documentation/appkit/documents_data_and_pasteboard/supporting_drag_and_drop_through_file_promises
Supporting Table View Drag and Drop Through File Promises
https://developer.apple.com/documentation/appkit/nstableviewdatasource/supporting_table_view_drag_and_drop_through_file_promises
Supporting Collection View Drag and Drop Through File Promises
https://developer.apple.com/documentation/appkit/nscollectionviewdelegate/supporting_collection_view_drag_and_drop_through_file_promises
Navigating Hierarchical Data Using Outline and Split Views
https://developer.apple.com/documentation/appkit/cocoa_bindings/navigating_hierarchical_data_using_outline_and_split_views
아이템 컨텐트를 나타내기 위해 아이템을 생성하는 것에 의한, 드래그 소스로부터 생성되는 컨텐트입니다.
드래깅 세션 내부에 있는 드래그된 단일 아이템입니다.
https://developer.apple.com/documentation/appkit/nsdraggingitem
https://velog.io/@panther222128/NSDraggingItem
과정 동안 드래그의 수정을 지원하는 드래그 앤 드롭 액션의 캡슐화입니다.
https://developer.apple.com/documentation/appkit/nsdraggingsession
https://velog.io/@panther222128/NSDraggingSession
드래깅 아이템에 있는 단일 객체입니다.
https://developer.apple.com/documentation/appkit/nsdraggingimagecomponent
https://velog.io/@panther222128/NSDraggingImageComponent
마우스, 키보드, 트랙패드 관련 이벤트를 처리합니다.
https://developer.apple.com/documentation/appkit/mouse_keyboard_and_trackpad
https://velog.io/@panther222128/Mouse-Keyboard-and-Trackpad
앱과의 상호작용을 제공하기 위해 메뉴 및 커서를 구현하고, 업데이트 정보를 전달하기 위해 앱의 도크 타일을 사용합니다.
https://developer.apple.com/documentation/appkit/menus_cursors_and_the_dock
https://velog.io/@panther222128/Mouse-Keyboard-and-Trackpad
제스쳐 리코그나이저에 있는 앱의 이벤트 처리 로직을 캡슐화합니다. 이로써 앱을 통해 해당 코드를 재사용할 수 있습니다.
https://developer.apple.com/documentation/appkit/gestures
https://velog.io/@panther222128/Gestures
터치 바에 상호작용 컨텐트와 컨트롤을 표시합니다.
https://developer.apple.com/documentation/appkit/touch_bar
https://velog.io/@panther222128/Touch-Bar
AppKit 앱을 macOS 사용자 모두가 접근 가능하도록 만듭니다.
https://developer.apple.com/documentation/appkit/accessibility_for_appkit
https://velog.io/@panther222128/Accessibility-for-AppKit