У меня есть проблема с Segue при нажатии на ячейку и пытается передать свою дату DetailViewControllerPrepareForSegue Tableview вопрос
Я не нашел здесь ответы на мой вопрос, поэтому я прошу здесь.
Вот мой метод:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// NSLog(@"Source Controller = %@", [segue sourceViewController]);
// NSLog(@"Destination Controller = %@", [segue destinationViewController]);
// NSLog(@"Segue Identifier = %@", [segue identifier]);
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
if (indexPath){
lastNews *item = [news objectAtIndex:indexPath.row];
[segue.destinationViewController setDetail:item];
NSLog(@"%@", item.title);
}
}
если я удалю, если условие только и оставить свой код, как это:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// NSLog(@"Source Controller = %@", [segue sourceViewController]);
// NSLog(@"Destination Controller = %@", [segue destinationViewController]);
// NSLog(@"Segue Identifier = %@", [segue identifier]);
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
lastNews *item = [news objectAtIndex:indexPath.row];
[segue.destinationViewController setDetail:item];
NSLog(@"%@", item.title);
}
мои данные могут быть переданы, но всегда только первую ячейку.
Если я реализую его, как это:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"detailNews"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
//if (indexPath){
lastNews *item = [news objectAtIndex:indexPath.row];
[segue.destinationViewController setDetail:item];
NSLog(@"%@", item.category);
}
}
он будет посылать, но всегда название новости и всегда из первых новостей. (NSLOG только для проверки)
Я знаю, что он получает все значения, я проверил его NSLOG, а не только заголовок.
Для вашей информации у меня всегда были последние 20 новостей, проанализированных с веб-сайта Это работает, и мои ячейки заполнены новостями.
Не могли бы вы предложить мне, где я ошибаюсь?
Спасибо
К сожалению, я пробовал это и получил то же самое. только название первой отправки новостей, но, согласно моему NSLOG, я ничего не получил в подробном диспетчере представлений. мой слог говорит, что все null: 2013-04-18 20: 50: 12.972 IsraelNews [42293: c07] (null) '2013-04-18 20: 50: 12.984 IsraelNews [42293: c07] (null) 2013-04 -18 20: 50: 12.985 IsraelNews [42293: c07] (null) 2013-04-18 20:50: 12.985 IsraelNews [42293: c07] (null) 2013-04-18 20:50: 12.985 IsraelNews [42293] : c07] (null) 2013-04-18 20: 50: 12.986 IsraelNews [42293: c07] (null) ' – Anton
Думаю, теперь это работает, но отчасти. Я просто отправлю его в свой метод setDetail, но там что-то сделал. теперь он получает данные, но все еще только первые новости из моей 20. любой ячейки, которую я нажимаю, и она возвращает мне только первые новости. – Anton
Хорошо, я думаю, что решил свой последний выпуск. Я забыл подключить свой IBOUTLET Tableview к моему контроллеру view. Вот так - Антон сейчас редактирует – Anton