2016-03-20 41 views
0

tableView内の偶数セルの背景色を変更する際に問題があります。ビューがロードされると、セルは正しく色付けされますが、スクロールすると背景色は白またはすべての薄い灰色になります。tableViewの偶数セルの背景色を変更する

バックグラウンドカラーを別の方法で更新する必要がありますか?

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 
    let cell = tableView.dequeueReusableCellWithIdentifier("gradeCell", forIndexPath: indexPath) 

    if (indexPath.row % 2 == 0) { 
     cell.backgroundColor = UIColor(red: 245/255, green: 245/255, blue: 245/255, alpha: 1.0) 
    } 
    return cell 
} 
+4

行が – dan

+0

でない場合や、 'prepareForReuse'でも背景色を元の色に戻す必要があります。 – nhgrif

+0

ありがとう、セルが再利用されているのを忘れてしまった – Bob

答えて

3

このコードスニペットを入力します。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 
    let cell = tableView.dequeueReusableCellWithIdentifier("gradeCell", forIndexPath: indexPath) 

    if (indexPath.row % 2 == 0) { 
     cell.backgroundColor = UIColor(red: 245/255, green: 245/255, blue: 245/255, alpha: 1.0) 
    }else{ 
     cell.backgroundColor = UIColor.whiteColor() // set your default color 
    } 

    return cell 
    } 
関連する問題