Передача детали из пользовательской ячейки в tableView в detailView
Вопрос новичка. Да, я просмотрел все, но не нашел хорошего объяснения того, что делать для этого конкретного случая. Я уверен, что это очень просто, но у меня проблемы. Если бы вы могли потратить 5 минут на просмотр кода и помочь моему пониманию, это было бы здорово.
Хорошо, у меня есть пользовательская ячейка с именем • ячейка, которой я дал идентификатор "MyCell". Это заполнено деталями и прекрасно работает. проблема в том, когда я пытаюсь передать это в подробный вид. Я изо всех сил пытаюсь понять, как лучше всего передать это, в частности, как получить текст из одной части моей пользовательской ячейки и сделать его дубликатом в detailView - текстовая метка должна называться такой же в пользовательской ячейке, как и она. находится в detailView или что-то еще? Я знаю, что мне нужно что-то добавить в мой didSelectRowAtIndexPath, но я не уверен, как это сконструировать.
Мой detailViewController называется detailViewController и ему присваивается идентификатор detailViewController в идентификаторе.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// I've called this •cell but my custom cell is called MyCell in the identifier - I'm not sure if this makes a difference?
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
//then I craete my detailViewController
UIViewController *detailViewController = [[UIViewController alloc] initWithNibName:@"detailViewController" bundle:nil]; // ...
//I think I understand this bit - detailTitle is the name I have given to the text label in the detail view and venueHeader is the name of the corresponding label in the custom cell - I want the detailTitle to = venueHeader
detailViewController.detailTitle = CustomCell.venueHeader.text;
// I have created a segue in storyboards so I don't know if I need this bit of code as well?
[self.navigationController pushViewController:detailViewController animated:YES];
}
1 ответ
Вы можете использовать этот код
UIStoryboard *storyBoard=[UIStoryboard storyboardWithName:@"Main" bundle:nil];
DetailViewController *pvc=[storyBoard instantiateViewControllerWithIdentifier:@"DetailViewController"];
pvc.dict = [arrData objectAtIndex:indexPath.row];
pvc.upload = [arrData1 objectAtIndex:indexPath.row];
[self.navigationController pushViewController:pvc animated:YES];
чем после печати словаря в целевом контроллере представления для получения данных