NSCollectionView 드래그 드롭 예제

user88975

NSCollectionView뷰에서 셀을 다시 정렬 할 수있는 드래그 드롭을 구현하려고합니다 . 대리자를 설정하고 아래 방법을 구현했습니다.

-(BOOL)collectionView:(NSCollectionView *)collectionView writeItemsAtIndexes:(NSIndexSet *)indexes toPasteboard:(NSPasteboard *)pasteboard {
    NSLog(@"Write Items at indexes : %@", indexes);
    return YES;
}

- (BOOL)collectionView:(NSCollectionView *)collectionView canDragItemsAtIndexes:(NSIndexSet *)indexes withEvent:(NSEvent *)event {
    NSLog(@"Can Drag");
    return YES;
}

- (BOOL)collectionView:(NSCollectionView *)collectionView acceptDrop:(id<NSDraggingInfo>)draggingInfo index:(NSInteger)index dropOperation:(NSCollectionViewDropOperation)dropOperation {
    NSLog(@"Accept Drop");
    return YES;
}

-(NSDragOperation)collectionView:(NSCollectionView *)collectionView validateDrop:(id<NSDraggingInfo>)draggingInfo proposedIndex:(NSInteger *)proposedDropIndex dropOperation:(NSCollectionViewDropOperation *)proposedDropOperation {
    NSLog(@"Validate Drop");
    return NSDragOperationMove;
}

이 문제를 어떻게 해결해야할지 모르겠습니다. 이를 통해 이제 개별 컬렉션 항목을 드래그 할 수 있음을 알 수 있지만 어떻게 만들 수 Drop있습니까?

GoodSp33d

위임 메서드 만 구현했지만 일부 메서드에는 논리가 없습니다. 예를 들어 컬렉션 항목 주위를 드래그하려면 논리 아래에 추가합니다.

-(BOOL)collectionView:(NSCollectionView *)collectionView writeItemsAtIndexes:(NSIndexSet *)indexes toPasteboard:(NSPasteboard *)pasteboard {
    NSData *indexData = [NSKeyedArchiver archivedDataWithRootObject:indexes];
    [pasteboard setDraggedTypes:@["my_drag_type_id"]];
    [pasteboard setData:indexData forType"@"my_drag_type_id"];
    // Here we temporarily store the index of the Cell, 
    // being dragged to pasteboard.
    return YES;
}

- (BOOL)collectionView:(NSCollectionView *)collectionView acceptDrop:(id<NSDraggingInfo>)draggingInfo index:(NSInteger)index dropOperation:(NSCollectionViewDropOperation)dropOperation {
    NSPasteboard *pBoard = [draggingInfo draggingPasteboard];
    NSData *indexData = [pBoard dataForType:@"my_drag_type_id"];
    NSIndexSet *indexes = [NSKeyedUnarchiver unarchiveObjectWithData:indexData];
    NSInteger draggedCell = [indexes firstIndex];
    // Now we know the Original Index (draggedCell) and the 
    // index of destination (index). Simply swap them in the collection view array.
    return YES;
}

awakefromnib에서 유형을 드래그하려면 컬렉션 뷰를 다음과 같이 등록해야합니다.

[_myCollectionView registerForDraggedTypes:@[KL_DRAG_TYPE]];

컬렉션보기를 선택 가능하도록 설정했는지 확인하십시오.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

NSCollectionView 드래그 드롭 예제

분류에서Dev

드래그 앤 드롭으로 NSCollectionView의 항목 재정렬, 신속한 3+

분류에서Dev

NSCollectionView 사용자 정의 드래그 앤 드롭 그리드에 좋은 것이 있습니까?

분류에서Dev

드래그 앤 드롭 II의 문제

분류에서Dev

각도 드래그 앤 드롭 문제

분류에서Dev

jQuery 드래그-드롭 카트 문제

분류에서Dev

jqxwidgets jqxtree 드래그 드롭 문제

분류에서Dev

JQuery UI 드래그 드롭 및 정렬. 정렬시 드롭 된 항목 복제

분류에서Dev

Swift에서 드래그 앤 드롭-드래그 된 유형 등록 문제?

분류에서Dev

드래그 앤 드롭 jquery 문제 제거

분류에서Dev

복제 개체 배경 드래그 앤 드롭

분류에서Dev

자바 스크립트 드래그 앤 드롭 기능 문제

분류에서Dev

드래그 앤 드롭시 QListWidget에서 항목 제거

분류에서Dev

드래그 가능한 요소를 드롭 한 후 제한

분류에서Dev

드래그 가능한 요소를 드롭 한 후 제한

분류에서Dev

드래그, 드롭 및 복제-Flash AS3

분류에서Dev

Kendo UI Grid 다중 선택 드래그 앤 드롭 문제

분류에서Dev

ExtJs 트리 패널에서 드래그 앤 드롭 제한

분류에서Dev

silverstripe v3 드래그 앤 드롭 재정렬 문제

분류에서Dev

DragEvents 전송시 Android 드래그 앤 드롭 문제

분류에서Dev

드래그 앤 드롭 후 TabPage 제목 정렬이 잘못됨

분류에서Dev

jQuery owlCarousel 드래그 앤 드롭 Firefox 문제

분류에서Dev

jQuery UI 드래그 앤 드롭 가능 중복 문제

분류에서Dev

jquery 드래그 앤 드롭 스크롤바 문제

분류에서Dev

자바 스크립트 드래그 앤 드롭 문제

분류에서Dev

드래그 앤 드롭 API에 문제가 있습니까?

분류에서Dev

드래그 앤 드롭으로 대상 요소 제거

분류에서Dev

드래그 앤 드롭 그리드 내에서 이미지 복제

분류에서Dev

JQuery GAE Dropload 사용 문제-드래그 앤 드롭에서 Blobstore 업로드

Related 관련 기사

  1. 1

    NSCollectionView 드래그 드롭 예제

  2. 2

    드래그 앤 드롭으로 NSCollectionView의 항목 재정렬, 신속한 3+

  3. 3

    NSCollectionView 사용자 정의 드래그 앤 드롭 그리드에 좋은 것이 있습니까?

  4. 4

    드래그 앤 드롭 II의 문제

  5. 5

    각도 드래그 앤 드롭 문제

  6. 6

    jQuery 드래그-드롭 카트 문제

  7. 7

    jqxwidgets jqxtree 드래그 드롭 문제

  8. 8

    JQuery UI 드래그 드롭 및 정렬. 정렬시 드롭 된 항목 복제

  9. 9

    Swift에서 드래그 앤 드롭-드래그 된 유형 등록 문제?

  10. 10

    드래그 앤 드롭 jquery 문제 제거

  11. 11

    복제 개체 배경 드래그 앤 드롭

  12. 12

    자바 스크립트 드래그 앤 드롭 기능 문제

  13. 13

    드래그 앤 드롭시 QListWidget에서 항목 제거

  14. 14

    드래그 가능한 요소를 드롭 한 후 제한

  15. 15

    드래그 가능한 요소를 드롭 한 후 제한

  16. 16

    드래그, 드롭 및 복제-Flash AS3

  17. 17

    Kendo UI Grid 다중 선택 드래그 앤 드롭 문제

  18. 18

    ExtJs 트리 패널에서 드래그 앤 드롭 제한

  19. 19

    silverstripe v3 드래그 앤 드롭 재정렬 문제

  20. 20

    DragEvents 전송시 Android 드래그 앤 드롭 문제

  21. 21

    드래그 앤 드롭 후 TabPage 제목 정렬이 잘못됨

  22. 22

    jQuery owlCarousel 드래그 앤 드롭 Firefox 문제

  23. 23

    jQuery UI 드래그 앤 드롭 가능 중복 문제

  24. 24

    jquery 드래그 앤 드롭 스크롤바 문제

  25. 25

    자바 스크립트 드래그 앤 드롭 문제

  26. 26

    드래그 앤 드롭 API에 문제가 있습니까?

  27. 27

    드래그 앤 드롭으로 대상 요소 제거

  28. 28

    드래그 앤 드롭 그리드 내에서 이미지 복제

  29. 29

    JQuery GAE Dropload 사용 문제-드래그 앤 드롭에서 Blobstore 업로드

뜨겁다태그

보관