- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
UIImageView *img;
UICollectionViewCell *myCell=[collectionView cellForItemAtIndexPath:indexPath];
img=(UIImageView*)[myCell viewWithTag:101];
if (myCell.selected) {
[myCell.img setImage:[UIImage imageNamed:@"images-2.png"]];
}
[collectionView reloadData];
}
- (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath{
UIImageView *img;
UICollectionViewCell *myCell=[collectionView cellForItemAtIndexPath:indexPath];
img=(UIImageView*)[myCell viewWithTag:101];
[img setImage:[UIImage imageNamed:@"images.png"]];
[collectionView reloadData];
}
-1
A
回答
0
問題與重載數據後[collectionView reloadData];
你會改變圖像中cellForItemAtIndexPath
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell = (UICollectionViewCell *)[collectionView dequeueReusableCellWithReuseIdentifier:@"cell" forIndexPath:indexPath];
if(indexPath.row == selectedIndexPath)
{
[img setImage:[UIImage imageNamed:@"selected image"]];
}
else
{
[img setImage:[UIImage imageNamed:@"images.png"]];
}
}
- (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath
{
selectedIndexPath=indexPath.row;
[collectionView reloadData];
}
注:最初設置selectedIndexPath = -1,則表明在集合視圖中的答覆
0
請勿在委託回調中調用reloadData
。這很容易導致未定義的行爲,並導致您提到的有關集合視圖的問題無法正確處理選擇狀態。
通常調用reloadData
刪除所有選擇。
+0
由於沒有選擇我不是!重新加載單元格,但我想改變單元格的圖像..你可以建議如何做到這一點? – 2014-10-08 06:26:06
相關問題
- 1. 選擇單元格集合
- 2. 如何在集合視圖中選擇單元格?
- 3. 無法在集合視圖中選擇幾個單元格
- 4. 集合視圖單元格按鈕不觸發動作
- 5. 從集合視圖中刪除集合視圖單元格Xcode
- 6. 當點擊另一個表格時取消選擇表格視圖單元格中的按鈕
- 7. PagingScrollTable - 當選擇單元格時消失backround圖像
- 8. 當您選擇單元格時,UITableViewCell更改單元格的大小
- 9. navigationController彈出視圖時取消選定單元格的內容?
- 10. 手動觸發單元格選擇TableView
- 11. Vaadin 8:綁定的CheckBoxGroup SelectionListener在取消選擇時未觸發
- 12. Excel VBA:取消選擇單元格
- 13. 如何在用戶返回表視圖時執行單元格取消選擇?
- 14. 表格視圖單元格內的集合視圖
- 15. 當包含公式的單元格更新時,onEdit未觸發?
- 16. 當單元格插入表格時,自定義表格視圖單元格內的圖像視圖消失
- 17. 單個集合視圖單元格內的控制表視圖
- 18. 取消選擇當前不可見的單元格
- 19. 當另一個單元格被選中時,取消選擇一個collectionview單元格
- 20. iPhone:當選中一個表格單元格時,更改視圖
- 21. 當在表格視圖中選擇一行時,觸發一個方法
- 22. 如何選擇集合視圖單元格以使用swift放大圖像?
- 23. 木偶集合視圖,提取集合不會觸發事件
- 24. 重新加載表格視圖數據並取消選擇單元格
- 25. 當單元格被觸摸時,表格視圖不會推向新視圖
- 26. 切換UICollectionView單元格的選擇/取消選擇狀態 - Swift
- 27. 上點擊單元格,選擇/取消選擇複選框
- 28. 當在DataGridView組合框單元格中發生選擇更改時更新相鄰單元格的數據源
- 29. 點擊集合視圖項會導致集合視圖中的多個選擇,而不是單個選擇
- 30. 允許觸摸表格單元取消其他當前觸摸
非常感謝回覆!如何獲得selectcell? – 2014-10-08 06:12:42
由於NANNAV是一個很好的幫助!我想你的ID聯繫..請 – 2014-10-09 08:20:55
@ mubibegum有沒有在這個網站上的個人聊天,在這個網站添加您的問題,任何一個幫助給你。 – NANNAV 2014-10-09 08:40:49