2016-04-08 7 views
0

ich versuche, die labelcolor zu ändern, wenn das „Datum“ in meinem detailTextLabel.text älter als heute ..xcode schnelle Zelle detailTextLabel.text ?. Farbe ab dem Datum genommen

 // Configure the cell... 

    cell.textLabel?.textColor = UIColor.blueColor() 
    cell.detailTextLabel?.textColor = UIColor.darkGrayColor() 

    let item = frc.objectAtIndexPath(indexPath) as! Item 
    cell.textLabel?.text = item.name! + "-" + item.etage! + "-" + item.raum! 
    let note = item.date 
    cell.detailTextLabel!.text = "\(note!)" 

    if note == "01.04.2016 23:00" { 
    cell.detailTextLabel?.textColor = UIColor.redColor() 
    } else { 

    } 

    return cell 
} 

Wie kann ich das tun? Es funktioniert mit einem bestimmten Datum, aber nicht mit NSDate() oder etwas ähnlichem. Ich werde verrückt!

groß thx!

+0

Kontrolle dieses http://stackoverflow.com/questions/26807416/check-if-date-is-before-current-date-swift und Stellen Sie sicher, mit dem gleichen Format zu vergleichen –

+0

Offenbar ist Ihre Item.date im String-Format, so dass es nicht möglich ist, direkt mit einem NSDate-Objekt zu vergleichen. – sleepwalkerfx

Antwort

0

Wie bereits there Sie so etwas wie dies machen:

... 
let note = item.date 
let now = NSDate() 

if note.earlierDate(now).isEqualToDate(note) { 
    cell.detailTextLabel?.textColor = UIColor.redColor() 
} 
+0

thx =) aber jetzt habe ich eine Nachricht: Wert des Typs 'String?' hat kein Mitglied 'friendlyDate' – slevin

+0

Versuchen Sie [diese] (http://stackoverflow.com/a/29319732/3466461) Erweiterung in Ihrem Code – giacavicchioli

+0

Sollte die Antwort validieren, wenn es funktioniert. – giacavicchioli

Verwandte Themen