如何启用AQGridView编辑模式?

时间:2011-03-16 04:05:45

标签: gridview

我正在为我的项目使用AQGridView。我面临的问题是我无法启用gridView的编辑模式。我想要的是,无论何时单击编辑按钮,每个单元格上都应显示删除图标,再次单击编辑按钮将禁用该编辑模式。

这是我的代码,除了第一个函数之外不起作用:

- (void) handleEditModeChange:(NSNotification * ) note  
{   
    if(self.gridView.isEditing)
    {
        [self.gridView setEditing:NO animated:YES];
                NSLog(@"gridView edit mode");
    }
    else 
    {

        [self.gridView  setEditing:YES animated:YES];
        NSLog(@"gridView NOT edit mode");
    }

}


- (UITableViewCellEditingStyle)gridView:(AQGridView *) aGridView  editingStyleForRowAtIndex:(NSUInteger) index {
    NSLog(@"editing style");

    // Detemine if it's in editing mode
    if(self.gridView.isEditing) {
        return UITableViewCellEditingStyleDelete;
    }
    return UITableViewCellEditingStyleNone;
}


- (void) gridView:(AQGridView *) aGridView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle  
    forRowAtIndex:(NSUInteger) index {

    NSLog(@"editing");
}

- (BOOL)gridView:(AQGridView *) aGridView canEditRowAtIndex:(NSUInteger) index {
    NSLog(@"canEditRowAtIndex");
    return YES;
}

这些代码位于视图控制器中,该控制器已经与AQGridViewDelegate,AQGridViewDataSource进行了比较。

上面的第一个函数运行正常但第二个函数由于某种原因没有被调用。

如下所示的数据源函数运行正常。

- (AQGridViewCell *) gridView: (AQGridView *) aGridView cellForItemAtIndex: (NSUInteger) index;

我是新手。有人可以告诉我这是否可行,或者我做错了什么?

我很欣赏任何建议。

1 个答案:

答案 0 :(得分:5)

AQGridView似乎没有实现编辑功能。如果你想在熟悉的表格编辑按钮中删除单元格,那么你必须自己动手。在每个相册单元格上放置一个隐藏的删除按钮,当您单击自定义“编辑”按钮时,使其可见。点击删除:

[gridArray removeObjectAtIndex:[albumCell displayIndex]];
NSIndexSet* set = [NSIndexSet indexSetWithIndex:[albumCell displayIndex]]; 
[gridView beginUpdates];    
[gridView deleteItemsAtIndices:set  withAnimation:AQGridViewItemAnimationFade];
[gridView endUpdates];