Jak ustawić kolor szablonu na załączonym ciągu znaków?Jak ustawić kolor obrazu szablonowego w NSTextAtuowanie
Tło:
Mam UILabel i mam ustawienie jego attributedText do NSAttributedString. NSAttributedString zawiera NSTextAttachment z małym obrazem. Teraz chcę, aby mój kolor obrazu był zgodny z kolorem tekstu i nie wiem, jak to zrobić.
Normalnie spodziewam się pokolorować obraz, ustawiając jego tryb renderowania na UIImageRenderingModeAlwaysTemplate, a następnie ustawiając kolor tintColor na zawierającym UIView. Próbowałem ustawić tintColor na mojej UILabel, ale to nie ma wpływu.
Oto mój kod. Jest w Ruby (RubyMotion) więc składnia może wyglądać trochę śmiesznie, ale mapy 1: 1 z Objective C
attachment = NSTextAttachment.alloc.initWithData(nil, ofType: nil)
attachment.image = UIImage.imageNamed(icon_name).imageWithRenderingMode(UIImageRenderingModeAlwaysTemplate)
label_string = NSMutableAttributedString.attributedStringWithAttachment(attachment)
label_string.appendAttributedString(NSMutableAttributedString.alloc.initWithString('my text', attributes: { NSFontAttributeName => UIFont.preferredFontForTextStyle(UIFontTextStyleFootnote), NSForegroundColorAttributeName => foreground_color }))
label = UILabel.alloc.initWithFrame(CGRectZero)
label.tintColor = foreground_color
label.attributedText = label_string
label.textAlignment = NSTextAlignmentCenter
label.numberOfLines = 0
Czy znalazłeś jakieś odpowiedzi na to pytanie, które nie wymagają rysowania obrazu przed dodaniem go jako załącznika tekstowego? Chciałbym mieć prosty sposób robienia tego. –
Niestety nie. W moim przypadku miałem sznur, który był czasem biały na ciemnym tle, a czasem czarny na jasnym tle ... Skończyło się na tym, że zmieniłem obraz załącznika na neutralną szarość, która działała na obu podłożach. – Ghazgkull