iOS将collectionviewCell设计成单选框

前段时间有个需求, 就是将collectionviewCell 设计成单选框.需求大致如下图 1.1


1.1

     需求很简单,就是点击任意一个 会变为选中状态.其余不变,如果只有两个商品的话 ,就不需要用collectionview 用button会更简单的实现,但是为考虑后续商品会增加,所以用collectionview 比较好.  

这个思路 是一位大神提供, 我只是把这个分享下.

1. 命名一个属性,用作 记录 点击的 indexPath.item

@property(nonatomic,assign)NSInteger  lastNum;

2. 在collectionview 的代理方法 didSelect 记录点击的indexPath.item 然后刷新collectionview

-(void)collectionView:(UICollectionView*)collectionView didSelectItemAtIndexPath:(NSIndexPath*)indexPath{

self.lastTag= indexPath.item;

[self.goodsChooseCollectionView   reloadData];

}

3.在collectionview数据源方法里进行判断

if(indexPath.item==self.lastTag) {

[cell.chooseBtnsetImage:[UIImageimageNamed:@"selec_"]forState:UIControlStateNormal];

}else{

[cell.chooseBtnsetImage:[UIImageimageNamed:@"椭圆-3-拷贝-2"]forState:UIControlStateNormal];

}

注:

这个方法 完全适用于 我的需求,而且实现简单,但是如果要实现 同一个按钮 点击 再点击 取消点击 就不适用.具体情况 还要根据自己的需求.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容