无法将类型'CustomProfileCell'的返回表达式转换为返回类型'UITableViewCell'

时间:2018-07-20 20:37:20

标签: ios swift xcode uitableview

这是我的密码

//
//  FirstViewController.swift
//  tabbed
//
//  Created by on 7/18/18.
//  Copyright © 2018 LR Web Design. All rights reserved.
//

import UIKit

class FirstViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {

    @IBOutlet weak var profileTableView: UITableView!

    var profileArray = [Profile]()

    override func viewDidLoad() {
        super.viewDidLoad()

        profileTableView.delegate = self

        profileTableView.dataSource = self

        profileTableView.register(UINib(nibName: "ProfileCell",bundle: nil) , forCellReuseIdentifier: "customProfileCell")

        retrieveProfiles()

    }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

        let cell = tableView.dequeueReusableCell(withIdentifier: "customProfileCell", for: indexPath) as! CustomProfileCell 
        cell.profileImage.image = UIImage(named: profileArray[indexPath.row].profileImage)
        cell.profileName.text = profileArray[indexPath.row].name
        cell.deviceCount.text = profileArray[indexPath.row].deviceCount 
        return cell
    }

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return profileArray.count
    } 
    func retrieveProfiles() {

        let p1 = Profile()
        p1.name = "John"
        p1.deviceCount = "10"
        p1.profileImage = "john"
        profileArray.append(p1)

        let p2 = Profile()
        p2.name = "Jane"
        p2.deviceCount = "5"
        p2.profileImage = "jane"
        profileArray.append(p2)

        let p3 = Profile()
        p3.name = "Andrew"
        p3.deviceCount = "4"
        p3.profileImage = "andrew"
        profileArray.append(p3)

        self.profileTableView.reloadData()

    }

}

我不断得到

  

无法将类型'CustomProfileCell'的返回表达式转换为类型'UITableViewCell'

enter image description here

2 个答案:

答案 0 :(得分:3)

由于您应该返回类型为UITableViewCell的自定义类,因此返回仅在以下情况下编译:

class CustomProfileCell : UITableViewCell {
   // here outlets hooked to xib
}

答案 1 :(得分:0)

好的,我的问题就这样解决了

我在故事板上使用了UICollectionView,但是在课堂上,我使用了UITableView的协议 所以当我更改它时,我的问题就解决了