我有一個包含學生列表的tableview。每個單元格包含學生的名字和副標題。我設法通過創建一個常量並返回這些數據來將兩個元素添加到我的字幕中。Swift - 將兩個數組元素添加到tableView中的detailTextLabel中
我試圖顯示此:
:(爲textLabel)第一個學生
(字幕)小學
我目前使用的這一段代碼,第5級
let subTitle = "\(student.level)\(", ")\(student.grade)" cell!.detailTextLabel?.text = subTitle
是明智的 像這樣做?它正在工作,但我不確定這是否是最好的方法。
我的代碼的擴展版本:
studentArray = [
Student(level: "Elementary", grade: "5th grade", name: "First student"),
Student(level: "Junior High", grade: "3rd grade", name: "Second student"),
Student(level: "High School", grade: "1st grade", name: "Third student")
// Return results
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell = tableView.dequeueReusableCellWithIdentifier("cellId")
if cell == nil {
cell = UITableViewCell(style: .Subtitle, reuseIdentifier: "cellId")
}
let student: Student
if searchController.active && (searchController.searchBar.text != "" || !filteredStudents.isEmpty) {
student = filteredStudents[indexPath.row]
} else {
student = studentArray[indexPath.row]
}
cell!.textLabel?.text = student.name
cell!.textLabel!.font = UIFont.systemFontOfSize(14)
cell!.textLabel?.text = student.name
cell!.textLabel!.font = UIFont.systemFontOfSize(14)
let subTitle = "\(student.level)\(", ")\(student.grade)"
cell!.detailTextLabel?.text = subTitle
cell!.detailTextLabel!.font = UIFont.systemFontOfSize(10)
return cell!
}
看起來對我好,但是,這是更多的代碼審查少代碼問題,不知道如果這是正確的地方。 –
雅你的代碼是好的 –
我同意,所以我真的不確定發佈這個問題擺在首位。 但是,我認爲這對其他可能有相同問題並正在尋找類似內容的人會有用。 –