Change color on checkmark in UITableView

Since the iOS SDK has changed since the accepted answer, I thought I'd just update with a new answer.

You can in fact change the color of the checkmark in a UITableViewCell by adjusting the tintColor property of the UITableViewCell.

You can also set an appearance proxy for all UITableViewCells so that ALL instances have a specific tint color unless otherwise specified

[[UITableViewCell appearance] setTintColor:[UIColor redColor]];

Swift: In Swift change the tintcolor to the color you want to change the color of any Accessory Type

cell.tintColor = .black

If you are looking for a Swift version:

Directly on the cell

For example in tableView(_:,cellForRowAtIndexPath:)

cell.tintColor = UIColor.redColor()

Using the appearance protocol

UITableViewCell.appearance().tintColor = UIColor.redColor()

Apple doesn't provide a public way to change the color of the checkmark so you'll have to do it with an image.

This is very simple, just set the accesoryView property of the cell to a UIImageView containing a checkmark of the correct color.

It'll look like this:

UIImageView *checkmark = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"coloredCheckmark.png"]];
cell.accessoryView = checkmark;
[checkmark release];

Enjoy!