首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DidSelectItem在集合视图上使用时删除错误的单元格

DidSelectItem在集合视图上使用时删除错误的单元格
EN

Stack Overflow用户
提问于 2020-03-08 05:22:20
回答 1查看 107关注 0票数 1

我设置了一个搜索栏来过滤我的单元格,我还有另一个数组来保存要在collectionView上显示的过滤后的数据

我对它进行了编码,以便当您选择一个单元格时,它会将您带到另一个显示用户详细信息的视图控制器。当您按下它时,新控制器上有一个编辑按钮,它会显示一个带有delete按钮的警报控制器

当我在没有使用搜索栏的情况下选择一个单元格,转到第二个包含用户详细信息的视图控制器并使用删除功能时,它工作得很好

但是,当我使用搜索栏时,过滤出的单元格显示出来,出于某种原因,我尝试删除我选择的单元格时,它会删除同一indexPath上主数组上的所有单元格,但不会删除我想要删除的单元格

代码语言:javascript
运行
复制
override func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {

    let contactDetailsVC = ContactDetailsVC()
    contactDetailsVC.delegate = self


    if isFiltering == true {

        contactDetailsVC.navigationItem.title = filteredUsers[indexPath.item].name
        contactDetailsVC.nameLabel.text = filteredUsers[indexPath.item].name
        contactDetailsVC.emailLabel.text = filteredUsers[indexPath.item].email


    } else {

        contactDetailsVC.navigationItem.title = user[indexPath.item].name
        contactDetailsVC.nameLabel.text = user[indexPath.item].name
        contactDetailsVC.emailLabel.text = user[indexPath.item].email

    }

    navigationController?.pushViewController(contactDetailsVC, animated: true)

    path =   indexPath.row

}

func deleteCell() {

    print(" delete function called")

    user.remove(at: path)
    collectionView.reloadData()

    navigationController?.popViewController(animated: true)

}
EN

回答 1

Stack Overflow用户

发布于 2020-03-08 05:35:44

您必须像在didSelect中一样,根据isFiltering进行删除。而且,删除项目比重新加载整个集合视图更有效

代码语言:javascript
运行
复制
func deleteCell() {

    print(" delete function called")
    if isFiltering {
       filteredUsers.remove(at: path)
    } else {
       user.remove(at: path)
    }
    collectionView.deleteItems(at: [path])

    navigationController?.popViewController(animated: true)

}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60582306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档