получить заголовок tableview titleForHeaderInSection

У меня есть 4 секционных стола в моем приложении iOS 6. У этих таблиц есть заголовок, который я установил в titleForHeaderInSection. Я хотел бы знать, как я могу получить доступ к этому заголовку с помощью NSLog в файле didSelectRowAtIndexPath. Я вижу строковое значение строки, на которую я нажал, в предупреждении, но мне также понравится заголовок раздела tableview. Я не уверен, как это получить.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSMutableArray *sectionArray = [self.arrayOfSections objectAtIndex:indexPath.section]; UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath]; NSString *cellText = selectedCell.textLabel.text; NSLog(@"Selected Cell: %@", cellText); UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Selected a row" message:[sectionArray objectAtIndex:indexPath.row] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alert show]; } - (NSString *) tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{ NSString *result = nil; if ([tableView isEqual:self.myTableView] && section == 0) { myTableView.tableHeaderView.tag = FROZEN; result = @"Frozen"; } else if ([tableView isEqual:self.myTableView] && section == 1) { myTableView.tableHeaderView.tag = FRUIT; result = @"Fruit"; } else if ([tableView isEqual:self.myTableView] && section == 2) { myTableView.tableHeaderView.tag = SALADS; result = @"Salads"; } else if ([tableView isEqual:self.myTableView] && section == 3) { myTableView.tableHeaderView.tag = VEGETABLES; result = @"Vegetables"; } return result; } 

Храните заголовки разделов в массиве как,

 NSArray *sectionTitles = [NSArray arrayWithObjects:@"Frozen", @"Fruit", @"Salads", @"Vegetables", nil]; 

И измените свой метод titleForHeaderInSection как,

 - (NSString *) tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { NSString *result = [sectionTitles objectAtIndex:section]; //.... return result; } 

Измените didSelectRowAtIndexPath как,

 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { //... NSLog(@"Header title: %@", [sectionTitles objectAtIndex:indexPath.section]); //... } 

Другим вариантом является использование приведенного ниже метода в didSelectRowAtIndexPath

 NSLog(@"Header title: %@", [self tableView:tableView titleForHeaderInSection:indexPath.section]); 

Ну, похоже, что UITableView должен предоставить вам доступ к этому, но я не нахожу ничего … Самый простой способ реализовать это, я думаю, создать массив (я назову его mySectionTitles и предположим это свойство) с заголовками разделов, а затем в файле didSelectRowAtIndexPath вызовите [self.mySectionTitles objectAtIndex:indexPath.section] и сделайте все, что хотите, с возвращенной строкой.

  • Почему статическая переменная проверяется на nil и затем назначается?
  • Приложение сбой на initWithStyle
  • Библиотека для форм UITableView
  • Выравнивание изображений разных размеров
  • Почему UITableCell немедленно отменяет выбор при открытии URL-адреса в Safari?
  • У AVPlayer все еще есть задержка после достижения статуса «ReadyToPlay»
  • Индексирование UITableview с 1 ​​секцией
  • Как предотвратить выделение строки UITableView?
  • Действительно ли dequueing повторно используемые ячейки действительно необходимы, если эти ячейки уникальны в UITableView?
  • перезагрузка данных в виде таблицы не работает
  • Несколько вопросов TableView
  • Interesting Posts

    Странный выпуск Date from String

    Как публиковать приложение Enterprise без plist в iOS

    UIBarButtonItem в навигационной панели для открытого меню стороны не работает

    Как определить, доступно ли свойство или функция в Swift 3 для iOS 8

    почему мои повторно используемые ячейки заголовка UITableView не используются повторно?

    Как отключить журналы консоли SDK для мобильных устройств iOS Google Mobile Ads?

    Огурцы – повторные неудачные тесты в Дженкинсе

    ios и opencv: как правильно вызывать cvtColor, не теряя память?

    Неправильное отображение UITableViewHeaderFooterView

    MPMoviePlayerController не может воспроизводить видео в формате 3gp

    Обнаруживать изменения пользовательского интерфейса

    iOS: Как создать коллекциюView с различными размерами и интерактивными ячейками

    Могу ли я установить на iOS устройства с macOS Sierra?

    AVAudioSession для вызова аудио видео

    Как изменить текст в зависимости от того, где я нахожусь в своем прокрутке?

    Давайте будем гением компьютера.