无法使用类型为“(部分)”的索引为类型为“[Array<String>]”的值下标。类型'(又名 'section.Type')
Cannot subscript a value of type '[Array<String>]' with index of type '(section)'. Type' (aka 'section.Type')
我正在尝试创建一个包含两个 headers(帐户、支持)的 TableView
sections.But 中的文本标题出现错误
我遵循了这个问题的答案:
错误:
和:
这是我的代码:
var myTitles = [["Delete current photo","Change profile picture","Change username","Change password"],["Help","Report a problem"]]
let headerTitles = ["Acount", "Support"]
override func viewDidLoad() {
super.viewDidLoad()
}
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return myTitles[section].count
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return 3 //This is not complete yet.
}
override func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
if section < headerTitles.count {
return headerTitles[section]
}
return nil
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("settingCell", forIndexPath: indexPath)
cell.textLabel?.text = myTitles[indexPath.section][indexPath.row]
return cell
}
首先,您从哪里获得 section
值:
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return myTitles[section].count
}
将其更改为 return myTitles.count
。
我正在尝试创建一个包含两个 headers(帐户、支持)的 TableView sections.But 中的文本标题出现错误
我遵循了这个问题的答案:
错误:
这是我的代码:
var myTitles = [["Delete current photo","Change profile picture","Change username","Change password"],["Help","Report a problem"]]
let headerTitles = ["Acount", "Support"]
override func viewDidLoad() {
super.viewDidLoad()
}
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return myTitles[section].count
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return 3 //This is not complete yet.
}
override func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
if section < headerTitles.count {
return headerTitles[section]
}
return nil
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("settingCell", forIndexPath: indexPath)
cell.textLabel?.text = myTitles[indexPath.section][indexPath.row]
return cell
}
首先,您从哪里获得 section
值:
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return myTitles[section].count
}
将其更改为 return myTitles.count
。