0

Ive checked around stackOverFlow for a solution but it seemed like it still didnt work for my code.. my detailTextLabel still does not show up :(

Wondering what I am doing wrong, here's my code

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    var cell = UITableViewCell()
    // display our ranked data
    cell.textLabel?.text = "\(championListInGame[indexPath.row])"

    if let url = NSURL(string: "http://ddragon.leagueoflegends.com/cdn/img/champion/loading/\(championListInGame[indexPath.row])_0.jpg"){
        if let urlData = NSData(contentsOfURL: url){
            cell.imageView?.contentMode = UIViewContentMode.ScaleAspectFit
            cell.imageView?.image = UIImage(data: urlData)
        }
    }

    if victory[indexPath.row] == true {
        cell.backgroundColor = UIColor.blueColor()
        cell.detailTextLabel?.text = " "+"victory!"
    } else {
        cell.backgroundColor = UIColor.redColor()
        cell.detailTextLabel?.text = " "+"defeat!"
    }

    return cell
}

my victory nor defeat showed up in my table cells however, the color, image, and text all showed up just as the way I wanted.

On the side note, can someone teach me how do I choose colors like baby blue or baby red ? the default red and blue is too strong for my app :(

Thanks for the help guys!

user3175707
  • 1,123
  • 3
  • 11
  • 14

1 Answers1

6

The default cell style doesn't have a detailTextLabel. You need to use .Value1 or .Subtitle as the UITableViewCellStyle:

var cell = UITableViewCell(style: .Value1, reuseIdentifier: nil)

You can use the UIColor:red:green:blue:alpha: constructor to make custom colors. The values all vary from 0.0 to 1.0. You can look on the web for colors. If they are specified with values in the 0 to 255 range, you can convert them by dividing the values by 255.0:

let babyRed  = UIColor(red: 1.0, green: 0.6, blue: 0.6, alpha: 1.0)
let babyBlue = UIColor(red:128.0/255.0, green: 178.0/255.0, blue: 255.0/255.0, alpha: 1.0)
vacawama
  • 150,663
  • 30
  • 266
  • 294