Как изменить тип аксессуара -> Цвет индикатора раскрытия в моей ячейке? - PullRequest
0 голосов
/ 10 мая 2018

Я не могу изменить цвет по умолчанию Accessory Type->Disclosure Indicator view в моем UItableviewCell.

Когда я меняю оттенок таблицы, он меняет цвет представления следующего типа аксессуара.

  • Детальное раскрытие информации
  • Деталь
  • CheckMark

Но я не могу изменить цвет «индикатора раскрытия».

Есть ли у вас какой-либо другой способ изменить цвет индикатора раскрытия, кроме как установить изображение в дополнительном представлении?

Скриншоты:

Cell:
cell

Меню Xcode:
xcodemenu

Ответы [ 2 ]

0 голосов
/ 10 мая 2018

Вы можете поместить свое изображение в accessoryView и ваша проблема решена.

Пример кода Введите этот код в cellForRowAtIndexPath

UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 11, 22, 22)];
imgView.contentMode = UIViewContentModeScaleAspectFit;
imgView.image = [UIImage imageNamed:@"IconMore"];
cell.accessoryView = imgView;

enter image description here

0 голосов
/ 10 мая 2018

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

import UIKit

class CustomDisclosureIndicator: UIView {
    @IBInspectable
    public var color: UIColor = UIColor.darkGray {
        didSet {
            setNeedsDisplay()
        }
    }

    override func draw(_ rect: CGRect) {
        let context = UIGraphicsGetCurrentContext()

        let x = self.bounds.maxX - 3
        let y = self.bounds.midY
        let R = CGFloat(4.5)

        context?.move(to: CGPoint(x: x-R, y: y-R))
        context?.addLine(to: CGPoint(x: x, y: y))
        context?.addLine(to: CGPoint(x: x-R, y: y+R))
        context?.setLineCap(.square)
        context?.setLineJoin(.miter)
        context?.setLineWidth(2)
        color.setStroke()
        context?.strokePath()
    }
}

Вы можете сделать следующим образом,

enter image description here

Выше кода выдает следующий вывод.

enter image description here

Попробуйте один раз и дайте мне знать, если есть какие-либо другие вопросы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...