Quelques modifications à la réponse de Jean-Pierre
Utilisez le code suivant en réponse au protocole NSTableViewDelegate tableViewSelectionDidChange :
Obtenez le NSTableRowView pour la ligne sélectionnée et appelez la méthode setEmphasized dessus. Lorsque setEmphasized est défini sur OUI, vous obtenez la surbrillance bleue, lorsque NON, vous obtenez la surbrillance grise.
-(void)tableViewSelectionDidChange:(NSNotification *)aNotification {
NSInteger selectedRow = [myTableView selectedRow];
NSTableRowView *myRowView = [myTableView rowViewAtRow:selectedRow makeIfNecessary:NO];
[myRowView setSelectionHighlightStyle:NSTableViewSelectionHighlightStyleRegular];
[myRowView setEmphasized:NO];
}
Et pour éviter l'effet dansant de l'ensemble bleu puis gris
[_tableView setSelectionHighlightStyle:NSTableViewSelectionHighlightStyleNone];