【发布时间】:2018-12-29 04:25:06
【问题描述】:
我正在尝试将自定义单元格添加到我的表格视图中
这是我为自定义 CustomProfileView.xib 文件配置的内容
Main.storyboard
我一直得到
使用未声明的类型“CustomProfileCell”
这是我的全部代码
//
// FirstViewController.swift
// tabbed
//
// Created by Ben Heng 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, numberOfRowsInSection section: Int) -> Int {
return profileArray.count
}
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 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()
}
}
【问题讨论】:
-
forCellReuseIdentifier 应该是“customProfileCell”,而不是“CustomProfileCell”
-
在这条线上
profileTableView.register(UINib(nibName: "ProfileCell",bundle: nil) , forCellReuseIdentifier: "customProfileCell")? -
我试过了,我得到了同样的错误。
-
您的标识符
customProfileCell,而不是ProfileCell。 ProfileCell 是您的班级名称 -
你的意思是
nibName?我很困惑。
标签: ios xcode uitableview xcode9