У меня есть два NSTableViews в одном представлении, и они имеют одинаковый источник данных и делегат.Два NSTableViews в одном представлении
Два вида таблиц называются varTableView и constraintTableView. Теперь число строк в каждом отличается, и я, я нахожу, что трудно реализовать два метода:
-(NSInteger) numberOfRowsInTableView:(NSTableView *)tableView
-(id) tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
Есть ли способ определить tableviews и вернуть соответствующее количество строк?
Моя реализация было что-то вроде этого:
-(NSInteger) numberOfRowsInTableView:(NSTableView *)tableView{
if([tableView.identifier isEqualToString:@"variableTableView"]){
return [self.arrayOfVariableNames count];
}
else{
return [self.arrayOfConstraintNames count];
}
}
он всегда возвращается счетчик имен ограничений, но не имена переменных
Действительно ли вы установили идентификатор переменной VariableTableView в "variableTableView"? Вам лучше просто сравнивать значения указателей ссылок на таблицы. – trudyscousin
Да. Я установил его в ID восстановления – Morpheus
Не знаю, что вы подразумеваете под идентификатором восстановления. Существует свойство на 'NSControl' (из которого' NSTableView' является подклассом), называемым 'идентификатором'. * Это то, что вам нужно установить, если вы собираетесь использовать этот подход. – trudyscousin