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

我已经为截止日期制作了一个detailTextLabel。
我想添加注释,以使其立即显示在截止日期(NSDate)下,作为第二个detailTextLabel(NSString),类似于内置的提醒应用程序。

我尝试添加它,但是每次实现第二个detailTextLabel时,最后期限都消失了,仅保留标题下的注释。
我也尝试将两个字幕合并到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
}

最佳答案

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

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


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

关于ios - 如何在Swift中的单元格中添加2 detailTextLabels?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32950664/

10-10 06:35