核心数据对象来自按钮的操作

时间:2014-02-06 17:56:40

标签: ios core-data uitableview uibutton

在我的应用程序中,我正在显示核心数据对象,在这种情况下,它是一个任务管理器。 我在行中包含了一个swip手势,当用户从左向右滑动时,UIView显示在屏幕的右侧,如下图所示:

enter image description here

这是handleGestureLeftRight方法的代码:

-(void)handleGestureLeftRight:(UIGestureRecognizer *)gec
{
    {

        CGPoint p = [gec locationInView:self.tableView];

        NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:p];


        if (gec.state == UIGestureRecognizerStateEnded) {


            NSLog(@"GESTURE LEFT-->RIGHT DONE");


          //BUTTONS AND LABELS DEFINITIONS ARE NOT SHOWN TO AVOID LONG CODE HERE



        }



    }
}

当用户点击右侧的按钮时,我需要您的帮助来了解如何实施核心数据操作。例如,如果用户点击“完成”按钮,则所选行对象应更改名为isDone的属性的值。同样应该点击其他按钮,但应更改不同的属性值。 谢谢。

1 个答案:

答案 0 :(得分:2)

handleGestureLeftRight:中将按钮添加到表格视图时,请保存 属性中选定的索引路径:

CGPoint p = [gec locationInView:self.tableView];
NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:p];
self.currentIndexPath = indexPath;

然后,在按钮操作方法中,您可以访问相应的Core Data对象 与

YourEntity *object = [self.fetchedResultsController objectAtIndexPath:self.currentIndexPath];

并更新其属性。删除按钮时,请设置

self.currentIndexPath = nil;