我目前正在使用AQGridView在我的应用上显示照片库,我对选择/取消选择处理有疑问。
我可以在我的galleryview中插入单元格后选择一个单元格
它的方式是,我可以很容易地选择两个单元格,但是如果我想取消选择一个单元格,它必须是我没有单击的单元格。我的问题是我希望能够像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];
}
}
答案 0 :(得分:0)
在gridView:didSelectItemAtIndex方法中,尝试使用取消选择项目 [gridView deselectItemAtIndex:index animated:animated];
那应该做的。