Mam niestandardowy NSTableCellView
z 3 polami tekstowymi, 1, który pojawił się i 2 innymi, które sam utworzyłem. Oto problem: kolor tekstu
Niestandardowe etykiety NSTableCellView niezmieniające koloru tekstu po wybraniu
The pól tekstowych pozostaje taka sama nawet po kliknięciu na wiersz. Próbowałem zaimplementować kod znaleziony przez google, ale nie działa. Mój kod klienta NSTableCellView jest:
- (void)drawRect:(NSRect)dirtyRect{
NSColor *color = [NSColor colorWithCalibratedRed:(26/255.0) green:(26/255.0) blue:(26/255.0) alpha:1.0];
[self.textField setTextColor:color];
color = [NSColor colorWithCalibratedRed:(102/255.0) green:(102/255.0) blue:(102/255.0) alpha:1.0];
[_lbl1 setTextColor:color];
[_lbl2 setTextColor:color];
}
- (void)setBackgroundStyle:(NSBackgroundStyle)backgroundStyle {
NSColor *color = (backgroundStyle == NSBackgroundStyleDark) ? [NSColor windowBackgroundColor] : [NSColor controlShadowColor];
self.textField.textColor = color;
self.lbl1.textColor = color;
self.lbl2.textColor = color;
[super setBackgroundStyle:backgroundStyle];
}
Co mogę zrobić, aby kolor tekstu na etykietach biały, gdy użytkownik kliknie na nich?
gdzie jest textfield nad ich, wszystkie są etykiety w prawo? – vishy
tak, to prawda. zmienił pytanie, aby uniknąć nieporozumień. –
po prostu pobierz komórkę w 'didSelect' używając' cellForRow' i ustaw kolory etykiet w komórce .. – vishy