我得到了一個UICollectionView,它是以編程方式創建的。我想有一個集合視圖在以下方向的行爲:UICollectiveViewCell中的UIView無法隱藏
- 用戶觸摸細胞
- 隱藏的UIView覆蓋圖像
- 用戶觸摸細胞再次
- 顯示的UIView以覆蓋圖像
1)之前在小區內的用戶觸摸圖像看起來像這樣
http://upload.siamza.com/1811355
2)後在小區內的用戶觸摸圖像就會看起來像這樣
http://upload.siamza.com/1811359
3)如果用戶觸摸圖像再次它會看起來像1)
現在我的選擇和取消是這個樣子:
- (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath
{
if(collectionView == genrescollectView){
genresRecCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"genresRecCell" forIndexPath:indexPath];
cell.checkforselectView.hidden = FALSE;
}
}
-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
if(collectionView == genrescollectView){
genresRecCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"genresRecCell" forIndexPath:indexPath];
cell.checkforselectView.hidden = TRUE;
}
}
,但看到在
不工作cell.checkforselectView.hidden = FALSE;
and
cell.checkforselectView.hidden = TRUE;
我已經通過添加 cell.checkforselectView.hidden = FALSE檢查cellForItemAtIndexPath是否工作。
,它工作,所以我不知道任何人都可以幫我解決這個問題,這是現在在cellForItemAtIndexPath
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
genresRecCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"genresRecCell" forIndexPath:indexPath];
NSString *imageGenres = [genresData objectAtIndex:indexPath.row];
cell.genresImage.image = [UIImage imageNamed:imageGenres];
NSString *textToParse = imageGenres;
NSArray *components = [textToParse componentsSeparatedByString:@"."];
NSString *genresText = [components firstObject];
cell.labelGenres.text = genresText;
cell.genresImage.layer.cornerRadius = 10.0f;
cell.genresImage.layer.masksToBounds = YES;
//---------> this is where I check whether it work or not(and it work).
cell.checkforselectView.hidden = FALSE;
return cell;
}
預先感謝:)
非常感謝你,現在它的工作! – 2015-03-09 11:00:23
我一直在梳理網絡4個小時尋找類似問題的解決方案,這也解決了我的問題,謝謝! – pricetag 2015-12-27 21:36:55