Iphone: Как получить значение массива в didSelectRowAtIndexPath? - PullRequest
0 голосов
/ 20 марта 2012

Я использую Google Api для пользовательского поиска и выполнил разбор json.Я успешно получил значения из JSON и сохранил эти данные в словаре.

 NSArray     *latestdata = [(NSDictionary*)[responseString JSONValue] objectForKey:@"items"];

Теперь у меня есть два массива в нем, ссылка и заголовок

titleArray = [latestdata valueForKey:@"title"];
linkArray = [latestdata valueForKey:@"link"];

Теперь я использую массив заголовков для хранениязаголовок в CellForRowAtIndexpath, и я хочу использовать ссылку для указанного или выбранного индекса в DidSelectIndexPathAtRow.

Я уже заполнил ячейку массивом заголовков, как показано ниже

cell.textLabel.text = [title objectAtIndex:indexPath.row];

Но теперь яНе, когда я выбираю строку в таблице, как я могу получить ссылку для этого, используя массив ссылок в методе didSelectRowAtIndexPath.

Что может быть решением для этого.

Ответы [ 2 ]

1 голос
/ 20 марта 2012

Вы бы использовали ту же самую парадигму, с которой устанавливали заголовок. Вам доступно indexPath.row в didSelectRowAtIndexPath.

Меня беспокоит то, что массивы синхронизированы. Не лучше ли вам использовать Карту для данных? Если вам удобнее, вы можете хранить заголовки в массиве, потому что анализ этого массива для построения таблицы действительно прост. Но как вы узнаете, что элемент в каждой точке массива заголовков соответствует соответствующему члену массива ссылок? Вы уверены, что [title objectAtIndex: 1] соответствует желаемой ссылке в [link objectAtIndex: 1]? По моему мнению, кодирование ключ-значение усилит это и даст вам более простое в обслуживании решение.

Удачи.

1 голос
/ 20 марта 2012

Попробуйте следующий код на didSelectRowAtIndexPath

NSLog ("Значение:% @", [title objectAtIndex: indexPath.row]);

Я надеюсь title - это глобальный массив.

...