0

我在 Xcode 中有一个 Table View Controller Swift 项目。

我已经为截止日期制作了一个 detailTextLabel。我想添加注释,因为它会作为第二个detailTextLabel(NSString)立即出现在截止日期(NSDate)下,类似于内置的Reminder app

我尝试添加它,但每次我实现第二个detailTextLabel时,截止日期都会消失,并且只保留标题下的注释。此外,我尝试将 2 个字幕合并到detailTextLabel中,但由于截止日期为 NSDate注释为 String ,因此无法合并。

我希望你能帮助我。先感谢您!

下面是我的一些代码:

    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCellWithIdentifier("todoCell", forIndexPath: indexPath) // retrieve the prototype cell (subtitle style)
        let todoItem = todoItems[indexPath.row] as ToDoItem

        cell.textLabel?.text = todoItem.title as String!
        if (todoItem.isOverdue) { // the current time is later than the to-do item's deadline
            cell.detailTextLabel?.textColor = UIColor.redColor()
        } else {
            cell.detailTextLabel?.textColor = UIColor.blueColor() // we need to reset this because a cell with red subtitle may be returned by dequeueReusableCellWithIdentifier:indexPath:
        }

        let dateFormatter = NSDateFormatter()
        dateFormatter.dateFormat = "'Due' MMM dd 'at' h:mm a" // example: "Due Jan 01 at 12:00 PM"
        cell.detailTextLabel?.text = dateFormatter.stringFromDate(todoItem.deadline)



       // When I try to add the detailTextLabel for note the deadline disappears 
       // cell.detailTextLabel?.text = todoItem.note as String!


    return cell
}
4

1 回答 1

1

您无法更改基本单元格,因为它有自己的特定 UI。因此,创建您自己的特定单元格类别并将其分配给您的单元格,以便您可以加入任意数量的标签。你的代码会有所改变:

let cell = tableView.dequeueReusableCellWithIdentifier("todoCell", forIndexPath: indexPath) as! YourCellClass

这就对了!希望能帮助到你。

于 2015-10-05T17:07:48.503 回答