2013-01-22 1 views
0

PXListView에서 작업 중이며 PXListView 내부에있는 데모 응용 프로그램으로 테스트 중입니다 ... 끌어서 놓기를 수행하는 동안 제대로 작동하지 않습니다 ... 드롭이 작동하지 않습니다 ...PXListView의 끌어서 놓기가 데모 응용 프로그램에서 작동하지 않습니다. 그것을 고치는 방법?

다음 대리자 메서드를 추가 ...하지만 여전히

- (BOOL)listView:(PXListView*)aListView writeRowsWithIndexes:(NSIndexSet*)rowIndexes toPasteboard:(NSPasteboard*)dragPasteboard 
{ 
    // +++ Actually drag the items, not just dummy data. 
    [dragPasteboard declareTypes: [NSArray arrayWithObjects: NSStringPboardType, nil] owner: self]; 
    [dragPasteboard setString: @"Just Testing" forType: NSStringPboardType]; 

    return YES; 
} 

- (NSDragOperation)listView:(PXListView*)aListView validateDrop:(id <NSDraggingInfo>)info proposedRow:(NSUInteger)row 
          proposedDropHighlight:(PXListViewDropHighlight)dropHighlight; 
{ 
    return NSDragOperationCopy; 
} 

- (BOOL)listView:(PXListView*)aListView acceptDrop:(id <NSDraggingInfo>)info row:(NSUInteger)row dropHighlight:(PXListViewDropHighlight)dropHighlight 
{ 
    return NO; 
} 

사람이이 문제를 해결하는 데 도움 주시기 바랍니다 수 있습니다 ... ... 그것은 원래 행 이주입니다 올바른 행에 무슨 일이 있었되지 떨어지고?

감사 & 감사합니다, Muthu

답변

0

는 여기에 귀하의 솔루션입니다. 약간 조정할 수는 있지만 작업이 완료됩니다.

- (BOOL)listView:(PXListView*)aListView acceptDrop:(id <NSDraggingInfo>)info row: (NSUInteger)row dropHighlight:(PXListViewDropHighlight)dropHighlight 
{ 
    NSLog(@"Accept Drop"); 
    NSString *temp = [_listItems objectAtIndex: [listView selectedRow]]; 
    [_listItems removeObjectAtIndex: [listView selectedRow]]; 
    [_listItems insertObject: temp atIndex: row]; 
    [listView reloadData]; 
    return NO; 
} 
관련 문제