微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何控制单元格重定义

如何解决如何控制单元格重定义

我有三个部分,第一个存储用户信息,第二个包含添加帖子的字段,第三个是帖子。 滚动时,我开始加载该部分,并在帖子部分添加帖子和用户信息部分


这是我的代码 UIViewController 扩展 UITableViewDataSource :

    func numberOfSections(in tableView: UITableView) -> Int {
        presenter?.numberOfSections() ?? 0
    }
    
    func tableView(_ tableView: UITableView,numberOfRowsInSection section: Int) -> Int {
        guard let section = UserPageTypeSection(rawValue: section) else { return 0 }
        return presenter?.numberOfRowsInSection(section: section) ?? 0
    }
    
    func tableView(_ tableView: UITableView,cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        guard let section = UserPageTypeSection(rawValue: indexPath.section),let userInfo = presenter?.cellForRowAt(section: section,indexRow: indexPath.row)
              else { return UITableViewCell() }
        switch userInfo.type {
        case .userInfo:
            guard let cell = tableView.dequeueReusableCell(withIdentifier: ProfileInfoTableViewCell.reuseIdentifier,for: indexPath) as? ProfileInfoTableViewCell else { return UITableViewCell() }
            cell.userinformation(userData: userInfo.data?[indexPath.row] as? UserProfile)
            return cell
            
        case .userAddPost:
            guard let cell = tableView.dequeueReusableCell(withIdentifier: ProfileInfoTableViewCell.reuseIdentifier,for: indexPath) as? ProfileInfoTableViewCell else { return UITableViewCell() }
            cell.addPostUser()
            return cell
        case .userPost:
            guard let cell = tableView.dequeueReusableCell(withIdentifier: ProfileInfoTableViewCell.reuseIdentifier,for: indexPath) as? ProfileInfoTableViewCell else { return UITableViewCell() }
            cell.post(text: "POST")
            return cell
        default:
            return UITableViewCell()
        } 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。