如何启用AQGridView编辑模式?

Pei*_*Cui 2 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;
}
Run Code Online (Sandbox Code Playgroud)

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

上面的第一个函数工作正常,但第二个函数由于某种原因没有被调用.

像下面这样的数据源函数工作正常.

- (AQGridViewCell *) gridView: (AQGridView *) aGridView cellForItemAtIndex: (NSUInteger) index;
Run Code Online (Sandbox Code Playgroud)

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

任何建议,我很欣赏.

Shr*_*esh 5

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

[gridArray removeObjectAtIndex:[albumCell displayIndex]];
NSIndexSet* set = [NSIndexSet indexSetWithIndex:[albumCell displayIndex]]; 
[gridView beginUpdates];    
[gridView deleteItemsAtIndices:set  withAnimation:AQGridViewItemAnimationFade];
[gridView endUpdates];
Run Code Online (Sandbox Code Playgroud)