web-dev-qa-db-ja.com

UITableViewCell AccessoryType.Checkmarkの色を変更するにはどうすればよいですか?

これが私のコードです:

cell.accessoryType = UITableViewCellAccessoryType.Checkmark

しかし、アプリを実行すると、チェックマークが表示されません。

次に、背景色を黒に設定すると、白いチェックマークが表示されます。

チェックマークの色を青などの他の色に変更するにはどうすればよいですか?

15
Assen Robin

はい、できます。

セルのtintColorを設定するだけです。

cell.tintColor = UIColor.whiteColor()
cell.accessoryType = UITableViewCellAccessoryType.Checkmark

Swift 3

let aCell = tableView.dequeueReusableCell(withIdentifier: "Cell")!
aCell.tintColor = UIColor.red
aCell.accessoryType = .checkmark
return aCell

OUTPUT

属性インスペクターからも実行できます

OUTPUT

33
Ashish Kakkad

UITableViewCellの色合いをAttribute Inspectorから設定するか、以下のようにコーディングするだけです。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cellIdentifier = "SimpleTableViewCell"
    let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath)

    // just add below lines
    cell.accessoryType = UITableViewCellAccessoryType.checkmark
    cell.tintColor = UIColor.red


    return cell
}

@HenriqueGüttlerMorbinは、それがあなたのために働くことを願っています。

9

セルクラス(UITableViewCellクラスをサブクラス化するもの)で色を設定することもできます。テーブルビューのすべての行に同じ色を適用する場合は、awakeFromNibメソッドでtintColorプロパティを設定します。そのようです:

override func awakeFromNib() {
    super.awakeFromNib()
    accessoryType = .checkmark
    tintColor = .red
}

もちろん、View ControllerのcellForRowAtメソッドで色を設定する場合は、indexPathパラメーターを使用して、表示される行に応じて異なる色を設定できます。

0
Bruno Campos