0

我目前正在使用 AQGridView 在我的应用程序上显示照片库,但选择/取消选择处理存在问题。

将单元格插入到我的画廊视图中后,我可以选择它

它的方式是,我可以轻松地选择两个单元格,但如果我想取消选择一个,它必须是一个我没有点击过的单元格。我的问题是我希望能够像 tableview 编辑模式行为那样选择/取消选择。

所以如果我像这样点击右边的

在此处输入图像描述

我将无法取消选择它,除非我单击这样的其他单元格

在此处输入图像描述

然后我可以像这样取消选择上一个单元格

在此处输入图像描述

并返回未选择单元格。但是,如果一个单元格是我在我的画廊中添加的唯一一个单元格,我绝不可以取消选择它。

取消选择/选择效果很好,这是我不明白的。

这是我的 AQGridView didSelectItemAtIndex 代码

- (void) gridView:(AQGridView *)gridview didSelectItemAtIndex:(NSUInteger)index {
NSLog(@"SELECT");
GalleryGridViewCell * cell = (GalleryGridViewCell *)[self.gridView cellForItemAtIndex:index];
[cell selectImg:TRUE];
[imgList addObject:cell.image];
//sentImg = plainCell.image;
}

这是我的 AQGridView didDeselectItemAtIndex 代码

 -(void)gridView:(AQGridView *)gridView didDeselectItemAtIndex:(NSUInteger)index
{
NSLog(@"img deselected %@ at index %d", plainCell.image, index);
GalleryGridViewCell * cell = (GalleryGridViewCell *)[self.gridView cellForItemAtIndex:index];
[cell selectImg:FALSE];
if (imgList != nil)
    [imgList removeObject:cell.image];
}

这是我为 GalleryGridViewCell selectImg:(BOOL) 选择添加的方法

-(void) selectImg:(BOOL) selection
{
if (selection == TRUE)
{
    [_checkBoxBttn setSelected:TRUE];
    [self setSelected:TRUE];
}
if (selection == FALSE)

{
    [_checkBoxBttn setSelected:FALSE];
    [self setSelected:FALSE];
}
}
4

1 回答 1

0

In your gridView:didSelectItemAtIndex method, try deselecting the item using [gridView deselectItemAtIndex:index animated:animated];

That should do the job.

于 2013-08-29T00:35:44.490 回答