Ios 在tableView中插入两个数组-连接错误
编辑: 我正在尝试将两个数组插入到一个带有两个单元格标签的tableview中。但我真的不知道如何将其全部转换并使其工作。这是到目前为止我的代码 在主ViewController的顶部,其中包含tableViewIos 在tableView中插入两个数组-连接错误,ios,swift,uitableview,Ios,Swift,Uitableview,编辑: 我正在尝试将两个数组插入到一个带有两个单元格标签的tableview中。但我真的不知道如何将其全部转换并使其工作。这是到目前为止我的代码 在主ViewController的顶部,其中包含tableView class ScoreBoardViewController: UIViewController, UITableViewDelegate, UITableViewDataSource var countedArray: [String] = [] var nameA
class ScoreBoardViewController: UIViewController, UITableViewDelegate, UITableViewDataSource
var countedArray: [String] = []
var nameArray: [String] = []
@IBOutlet weak var tableView: UITableView!
var list: [pointsTxt] = []
其他信息:我添加了self.tableView.delegate=self
单元的类
class ScoreCell: UITableViewCell
{
@IBOutlet weak var person: UILabel!
@IBOutlet weak var points: UILabel!
func setCell(list: pointsTxt)
{
person.text = list.person
points.text = list.points
}
}
错误:无法将“[String]”类型的值分配给“String”类型
数组的类
class pointsTxt
{
var person: [String] = []
var points: [String] = []
init(person: [String] = [], points: [String] = [])
{
self.person = person
self.points = points
}
}
我希望你明白我需要什么。提前谢谢 创建自定义tableViewCell时,必须遵循以下步骤: 子类UITableViewCell 将您的插座添加到该子类 将子类注册到TableView rowAtIndexPath函数的代码示例:
您是否已将插座连接到viewController?它应该类似于var label=UILabel,然后您可以这样设置:label.text=points,否则您应该查看如何从Storyboard@PaFi是的,我知道了。你能告诉我你是怎么连接插座的吗?给我两分钟谢谢你也必须向下转换到正确的UITableviewClass,我将发布一个答案作为示例。编辑:您创建了UITableView子类吗?不知怎么的,代码格式不起作用,但您明白我的意思吗?我在编号列表和代码之间添加了一个点,现在它的格式正确了。在代码后面的列表中有一些奇怪的东西,现在我不知道如何正确处理它,因此出现了“hack”。@PaFi好吧,所以。我已经添加了子类等,但是在插入数组时得到了它。->您必须通过索引访问nameArray,例如nameArray[0]
class pointsTxt
{
var person: [String] = []
var points: [String] = []
init(person: [String] = [], points: [String] = [])
{
self.person = person
self.points = points
}
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if indexPath.row < nameArray.count {
// load from customerDetails array
let names = nameArray[indexPath.row]
let cell = tableView.dequeueReusableCell(withIdentifier: "listCell", for: indexPath) as! UITableViewSubclassCell
cell.person.text = names
return cell
} else {
// load from customerDetails2 array
let points = countedArray[indexPath.row - nameArray.count]
let cell = tableView.dequeueReusableCell(withIdentifier: "listCell", for: indexPath) as! UITableViewSubclassCell
cell.person.text = points
return cell
}
}