如何识别哪个按钮点击UICollectionView iOS哪个部分?

时间:2015-02-10 05:24:05

标签: ios objective-c uicollectionview

我有UICollectionView,它有2个部分。每个部分标题都有一个按钮。我尝试将节ID发送到prepareForSegue上的另一个视图控制器,如下所示。

if ([[segue identifier] isEqualToString:@"ManualCapture"]){
    NSIndexPath *indexPath = [self.collectionView indexPathForCell:sender];

    ManualCapture *vc = [segue destinationViewController];
    vc.sectionId = indexPath.section;
}

但它会发送0作为节ID。有没有可能获得节ID的方法?如何根据按钮单击发送sectionId。基本上我想做的是,当我点击第1部分中的按钮时,在prepareForSegue上它应该被发送0,如果我点击第2部分中的按钮,在prepareForSegue它应该被发送1.怎么可以我这样做了?

提前致谢!

1 个答案:

答案 0 :(得分:3)

你可以这样做: 在集合视图委托方法

- (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath{
NSString *tagStr = [NSString stringWithFormat:@"%d%d",indexPath.section,indexPath.row];
yourButton.tag = [tagStr intValue];
}

然后当你想检查哪个部分或索引通过它的标签访问它时,如下所示:

UIButton *temp = (UIButton *)sender;
NSString *tempStr = [NSString stringWithFormat:@"%d",temp.tag];

然后比较它。