2

我在一个 ViewControl 中实现了两个 TableView。最初一个有数据,另一个没有。

所以,我想知道如何实现在已完成的 TableView 中触摸一行并将其滑动到空的 TableView 的手势事件,以移动该数据。

4

2 回答 2

1

将滑动手势添加到表格的每个单元格,此手势调用自定义方法,您在其中传递indexPath单元格的,然后在您的自定义方法中编写代码以将此对象从第一个表格的数组添加到第二个表格并将其从第一个表格中删除大批。reloadData最后你用方法刷新 boh 表

于 2013-10-14T12:46:29.253 回答
0

到目前为止我所做的......(与@Mirko所说的略有不同)

  1. 将 UISwipeGesture 添加到表中(在 ViewDidLoad 方法内),并将其定义为捕获“向上滑动”事件,调用我的事件处理程序。

    swipeCell = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeUpEvent:)];
    swipeCell.direction = UISwipeGestureRecognizerDirectionUp;
    [self.tableA addGestureRecognizer:swipeCell];
    
  2. 实现了事件处理程序,它在开始时获取滑动移动选择的单元格。

    -(IBAction)swipeUpEvent:(UIGestureRecognizer *) sender
    {
    
    CGPoint location = [sender locationInView:self.tableA];
    NSIndexPath *swipedIndexPath = [self.tableA indexPathForRowAtPoint:location];
    
    NSString *temp = [arrayA objectAtIndex:swipedIndexPath.row];
    
    [arrayB addObject:temp];
    [arrayA removeObjectAtIndex:swipedIndexPath.row];
    
    [self.tableB reloadData];
    [self.tableA reloadData];
    }
    

它可能不是解决问题的最优雅的解决方案,但至少我避免为每个单元格创建一个 ActionListener。我希望它能为我节省一些记忆。

于 2013-10-17T00:14:25.603 回答