Używam widoku widoku opartego na widoku i nie chcę, aby rysował pola NSTextField z białym kolorem tekstu, gdy jest zaznaczony. Nie mogłem znaleźć działającego rozwiązania. Tak więc każda pomoc jest bardzo doceniana.Jak wyłączyć biały kolor tekstu w zaznaczeniu w NSTableView opartym na widoku?
Oto mój problem:
chcę "Wybór jest białe" text być również sporządzone w kolorze domyślnym tekstowym.
Dotychczas Pomyślałem, że
- Ustawianie atrybutów w
tableView:viewForTableColumn:item:
naprawdę nie pomaga - Ustawianie
NSTextField
kolor do koloru niestandardowego, która jest czymś innym niż domyślny kolor sterowania zapobiegnie od wciągnięcia biały, ale nadal traci styl czcionki (pogrubiony, kursywa, itp.). - Ustawienie atrybutu
NSTableView
naselectionHighlightStyle
naNSTableViewSelectionHighlightStyleNone
rozwiązuje problem, ale nie zostanie odświeżone:NSTableRowView
. Również wybrany styl nie jest tym, czego chcę. Chcę, aby pierwsze kliknięcie wybrało wiersz, a drugie kliknięcie pozwoli edytować pole tekstowe. Podczas korzystania zNSTableViewSelectionHighlightStyleNone
pierwsze kliknięcie rozpoczyna edycję pola tekstowego. - Kolor tekstu nie zmienia się, jeśli granice NSTextext są ograniczone. Ale nie chcę pól z polami obramowanymi (jak pokazano na zrzucie ekranu) Pola tekstowe można edytować)
Nie mogłem określić "jak" pole tekstowe ma biały kolor. Przesunąłem setTextColor:
i zdałem sobie sprawę, że nigdy nie jest wywoływane po zmianie selekcji. Myślę więc, że NSAttributedString jest zbudowany gdzieś wewnątrz procedury rysowania/wyboru NSTableView.
Każda pomoc jest bardzo doceniana.
Oh. Dziękuję Ci. Po prostu "niepełnosprawny" seter. Dla swift jest to: 'override var backgroundStyle: NSBackgroundStyle {get {return .Dark} set {}}' – surfrider