我有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.怎么可以我这样做了?
提前致谢!
答案 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];
然后比较它。