Следует проверить, что функция выбора типа не использует ваши пробелы.Я видел эту проблему в прошлом.Вы должны быть в состоянии позвонить [yourTableView setAllowsTypeSelect:NO]
, чтобы отключить его.Однако, по какой-то причине, в одном случае единственный способ, которым я смог успешно обойти это, был реализовать метод NSTableViewDelegate -tableView:typeSelectStringForTableColumn:row:
и вернуть nil:
- (NSString *)tableView:(NSTableView *)tableView typeSelectStringForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
return nil;
}
Это отключит выбор типа все вместе.В моем случае это было хорошо.Как объяснено в документации:
Вернуть nil, если не нужно искать строку или tableColumn.
Другой вариант может заключаться в реализации -tableView:shouldTypeSelectForEvent:withCurrentSearchString:
и возврате NO, есликод события - 49 (пробел).Таким образом, выбор типа остается включенным, игнорируется только пробел.
Это всего лишь одна идея.Это может на самом деле не быть причиной вашей проблемы, но в прошлом я видел идентичные симптомы, и причиной был выбор типа.