필요하다면 Drag 되고 있는 Contents에 알아보기 쉽게 Preview를 제공할 것
Drag 데이터를 가장 고해상도에서 낮은 해상도 순으로 제공할 것
앱 내에 존재하는 데이터 그 자체를 먼저 적용하자
Drag & Drop을 통해 콘텐츠를 전달할 때 시간이 오래 걸리거나 리소스를 많이 사용하는 경우 NSFileProviderExtension을 사용하자.
Drag & Drop을 통해 콘텐츠를 전달할 때 시간이 오래 걸린다면 얼마나 시간이 걸리는지 사용자가 알 수 있게끔 UI를 제공해야 한다.
Drop 될 때에 시각적인 효과를 사용할 것
Drag 하는 컨텐츠가 디바이스의 경계를 벗어나 Drag 될 때, 스크롤 될 수 있도록 하자.
앱 내에 존재하는 데이터 그 자체를 먼저 적용하자
Drop된 컨텐츠 내용의 중요 부분만 추출할 것
테이블 뷰와 컬렉션 뷰 내에 컨텐츠를 Drop 했을 경우, PlaceHolder를 띄워라.
시간이 오래 걸리는 컨텐츠를 Drop 했을 경우, 진행 상태를 표시하자
콘텐츠를 Drop 하고 프로세스가 시작될 때 피드백을 제공하면 좋다.
Drop에 실패했다면 사용자에게 알려주어야 함
텍스트를 Drop 했을 경우, Drop된 영역에서 사용하는 텍스트의 폰트 및 크기가 Drop 한 텍스트와 같아야 함.
앱 내에서 Drag & Drop을 할 경우, Drag & Drop을 취소하기 어려울 수 있으므로 사용자가 직관적으로 확인하여 Drag & Drop을 취소할 수 있는 창을 만들자.