Просто используйте indexPathsForSelectedRows
. Но эта инструкция вернет более одного indexPath
.
Это говорит о том, что у Xcode есть блестящая функция автозаполнения, вы могли бы начать вводить «индекс», и он показал бы indexPathsForSelectedRows
напрямую, вы также можете обратиться к отличной документации, прилагаемой к Xcode. Надеюсь, это поможет вам!
ОБНОВЛЕНИЕ 1 - Как захватить indexPaths из массива
метод indexPathsForSelectedRows
возвращает массив объектов NSIndexPath, каждый из которых соответствует одному выбранному элементу. Если выбранных элементов нет, этот метод возвращает пустой массив.
Теперь, чтобы получить доступ к этому объекту, вы должны спросить себя, как мне получить доступ к массиву? Вы делаете некоторые исследования, и тогда вы пришли к такому выводу:
NSArray *arrayOfIndexPathsTableOne = [self.myTableViewOne indexPathsForSelectedRows];
//Then you can iterate through the array and doWhatever you like.
for(int i = 0; i < [arrayOfIndexPathsTableOne count]; i++){
NSIndexPath *indexPathImInterestedIn = [arrayOfIndexPathsTableOne objectAtIndex:i];
//If you do actually have a tableViewController then call [self cellFor...]; instead of self.myTableViewOne
UITableViewCell *currentCell = [self.myTableViewOne cellForRowAtIndexPath:indexPathImInterestedIn];
//you can grab the data you need from this cell and do whatever you like
//I would suggest you grab the data from the datasource instead of the cell, since your datasource should contain the datamodel where you can extract the information you need.
//Or if its just one value from the cell you want to grab you could do
[myGlobalArray addObject:[NSString stringWithObject:@"%@", currentCell.textLabel.text]]; //your value
}
//Voila
OP имеет контроллер вида, который содержит несколько контроллеров Table View **, а не таблицы. Таким образом, ваш код self.myTableViewOne не будет работать. (И манипулирование другими иерархиями представлений диспетчера представлений прерывает инкапсуляцию другого VC.) Поэтому я предложил создать протокол для обмена данными между контроллерами представлений. –
Я сомневаюсь, что он имеет 4 'UITableViewControllers' в своем' UIViewController' и вместо этого имеет 'UITableViews', что он создан. Я помню в свое время, когда я использовал UITableViews UITableViewControllers. Но это не проблема, OP может просто сделать «self», а затем метод, который он хочет вызвать. Спасибо что подметил это. – Pavan