2012-05-15 6 views
-2

Я читал много, но я не смог найти ничего близкого к тому, что я пытаюсь сделать. Я получаю ответ JSON и заполняю результаты UITableView. Когда пользователь выбирает строку на UITableView, я хочу получить соответствующее значение «id», которое связано с отображаемым именем. Пример JSON ответ:Objective-c Parse JSON Response

{"active":true,"created_at":"2012-05-12T03:04:21Z","description":"Test 1", 
"id":11,"name":"This Is A Test","updated_at":"2012-05-12T03:04:21Z"} 

Так я установил UITableView строку с именем это тест, и когда пользователь выбирает, что я хочу, чтобы вернуть номер 11, как они были выбраны. В функции didSelectRowAtIndexPath я могу вытащить

UITableViewCell *selectedCell = [self.tableView cellForRowAtIndexPath:indexPath]; 

NSString *cellText = selectedCell.textLabel.text; 

sc.selectedCategory = cellText; 

, который даст мне имя объекта, но как я могу снова вызвать словарь и получить значение «ID», где имя соответствует выбранной ячейке? Я довольно новичок в объективе-c, но многие годы занимаюсь Java. Любые примеры были бы замечательными.

Заранее благодарен!

ответ

2

У вас есть словарь. Вам необходимо отбросить массив objectAtIndex (путь указателя таблицы) как объект NSDictionary, а затем использовать valueForKey.

-то вроде следующего в didSelectRowAtIndexPath:

NSDictionary *selRow = (NSDictionary *)[myArray objectAtIndex:indexPath.row]; 
NSInteger myID = [[selRow [email protected]"id"] intValue]; 
+0

Извините за несвоевременное обновление, это работало отлично. – Jarod

+0

Поскольку у меня уже были мои объекты, разделенные на массивы, я смог просто получить значение с помощью [myArray objectAtIndex: indexPath.row] .... Это, похоже, работает, не возвращаясь к объекту словаря json. – Jarod