Подтвердить что ты не робот

Изменить цвет на галочке в UITableView

Может ли кто-нибудь быть таким добрым, чтобы показать мне, как изменить цвет на галочке в UITableView?

Я искал, но, похоже, не работал.

Приветствия

4b9b3361

Ответ 1

Apple не предоставляет общедоступный способ изменить цвет галочки, поэтому вам придется делать это с изображением.

Это очень просто, просто установите свойство accesoryView ячейки в UIImageView, содержащее галочку правильного цвета.

Это будет выглядеть так:

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

Наслаждайтесь!

Ответ 2

Поскольку IOS SDK изменился с момента принятия ответа, я подумал, что просто обновляю новый ответ.

Фактически вы можете изменить цвет галочки в UITableViewCell, отредактировав свойство tintColor UITableViewCell.

Вы также можете установить прокси-сервер внешнего вида для всех UITableViewCells, чтобы ВСЕ экземпляры имели определенный цвет оттенков, если не указано иное

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

Ответ 3

Если вы ищете версию Swift:

Непосредственно на ячейке

Например, в tableView(_:,cellForRowAtIndexPath:)

cell.tintColor = UIColor.redColor()

Использование протокола внешнего вида

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

Ответ 4

В iOS 7 работало для меня.

[self.tableView setTintColor:[UIColor someColor]];

Ответ 5

На этом изображении показано, как это сделать в раскадровках. Цвет оттенка - это галочка.

enter image description here

Ответ 6

Я обнаружил, что ответ igraczech в основном правильный, но с iOS 6 или более поздней версией вы можете просто установить цвет оттенка всего вида таблицы, а элементы по умолчанию наследуют вниз.

[self.tableView setTintColor:[UIColor someColor]];

Это сработало для меня и позволило мне покрасить в галочку.

Ответ 7

Запустив iOS 7, вы можете установить цвет оттенка в представлении контроллера вида, чтобы этот оттенок цвета был распространен на все его дочерние представления. Поэтому, чтобы установить галочку UITableViewCell как фиолетовый цвет (например), в вашем методе viewWillAppear вам необходимо:

[self.view setTintColor:[UIColor purpleColor]];

Ответ 8

 UITableViewCell *cell=(UITableViewCell*)[tableView dequeueReusableCellWithIdentifier:@"CellIdentifier" forIndexPath:indexPath];
cell.tintColor=UIColor.whiteColor;
return cell;

Ответ 9

UIAccessoryTypeCheckmark (правая сторона) наследует цвет фона своего табличного представления.

self.tableView.backgroundColor = [UIColor clearColor];

Ответ 10

#import "UIImage+Color.h"

UIImage *image = [[UIImage imageNamed:@"ic_check_black_24dp.png"] changeColor:CLR_BUY];
UIImageView *checkmark = [[UIImageView alloc] initWithImage:image];
cell.accessoryView = checkmark;

Ответ 11

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
HNCustomTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"HNCustomTableViewCell" forIndexPath:indexPath];
cell.tintColor = [UIColor colorWithRed:0.99 green:0.74 blue:0.10 alpha:1.0];
return cell;
}

Это работает для меня.

Ответ 12

Я всегда использовал этот простой способ:

UITableViewCell *cell = ...;
cell.tintColor = [UIColor greenColor];
cell.accessoryType = UITableViewCellAccessoryCheckmark;

Ответ 13

Вам не нужно использовать свой собственный образ, вы можете просто изменить его в своем представлении, загрузив его с помощью следующего кода.

[self.tableView setTintColor:[UIColor colorWithRed:250/255.0 green:223/255.0 blue:6/255.0 alpha:1]]

Ура!

Ответ 14

Приведенные выше ответы все отлично. Но если вы хотите сделать это глобально, просто сделайте

UITableViewCell.appearance().tintColor = .green

Хороший маленький трюк :)

Ответ 15

Swift 3.1, iOS 9 +

if #available(iOS 9.0, *) {
            UIImageView.appearance(whenContainedInInstancesOf: [UITableViewCell.self]).tintColor = UIColor.themeTint //add your color here 
        } else {
            // Fallback on earlier versions
        }

Result