UITableView章节标题故障?

时间:2016-09-07 07:33:01

标签: ios swift uitableview sections

我有一个视图控制器,里面有一个分组的tableview。这会产生一个非常奇怪的故障,导致sectionTitles显示在侧面。我已经将topview,trailing,bottom和leading约束附加到tableview的superview上,并且我已经测试了在cellForRowAtIndexPath中返回UITableViewCell()以查看它是否是导致问题的单元格,但它仍然显示它是这样的。

var sectionTitles = ["Customer Orders", "Unprocessed Orders", "Processed Orders"]


func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return sectionTitles.count
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 1
}

func sectionIndexTitlesForTableView(tableView: UITableView) -> [String]? {
    return sectionTitles
}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{
    let cell = tableView.dequeueReusableCellWithIdentifier(CONSTANTS.CELL_IDENTIFIERS.ORDER_CELL) as! OrderTableViewCell
    return cell
}

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    // Perform segue to order list in future
}

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    return 117.0
}

enter image description here

2 个答案:

答案 0 :(得分:0)

几小时后我发现我没有实现这个方法

override func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
    return sectionTitles[section]
}

答案 1 :(得分:0)

func sectionIndexTitlesForTableView(tableView: UITableView) -> [String]? {
    return sectionTitles
}

如果你只有一个部分,你就不会放很多标题。 如果您想要为每个单元格提供标题,则必须在自定义的tableViewCell中添加标签,在cellForRowAtIndexPath中,您必须放置类似的内容(在创建NSObject类之后):

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{
    let cell = tableView.dequeueReusableCellWithIdentifier(CONSTANTS.CELL_IDENTIFIERS.ORDER_CELL) as! OrderTableViewCell

let order = Order[indexPath.row]

cell.yourTitleLabel.text = order.title

    return cell
}