Skip to content
This repository has been archived by the owner on Aug 23, 2022. It is now read-only.

palmin/ios-dragable-table-cells

Repository files navigation

ios-dragable-table-cells

Support for drag-n-drop of UITableViewCells in a navigation hierarchy of view controllers. You drag cells by tapping and holding them. You go deeper into the hierarchy by hovering the cell above another cell and you step out by hovering above the left side of the navigation bar.

View controllers are stacked as cards on top of the starting view controller and there will also be some of the starting view controller visible. Hovering above starting view controller steps back in the view hierarchy on view controller at a time.

You just include the two source files at the root of this repository in your project. View controllers need to implement a protocol that maps between cells and the view controllers these cells would bring you and performs the action when drag has completed.

When cells are created or shown you need to register for dragging. It is safe to register a cell multiple times.

#import "AB_DragableTable.h"
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
	UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:identifier forIndexPath:indexPath];
    [cell registerForDragging];
    return cell;
}

This is used in Working Copy to move around files in Git repositories. You can reach me as @palmin on Twitter.

About

Objective-C library for drag-n-drop of UITableViewCells in a navigation hierarchy of view controllers.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published