Я делаю тестовое приложение для вывода списка фильмов в приложении на основе навигации, используя данные из plist-файла, который я прочитал в своем appDelegate в application:didFinishLaunchingWithOptions:
. Когда я пытаюсь перейти ко второму detailViewController, я получаю частично измененное название (я получаю название фильма, но вместо года в UIView.title
я получаю что-то вроде «78898320» и пустой UIImageView & UILabels. Чего мне не хватает
Вот мой метод в rootViewController:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"YOU SELECTED: %d",indexPath.row);
detailViewController *detailView = [[detailViewController alloc] initWithNibName:@"detailViewController" bundle:nil];
NSDictionary *dict = [NSDictionary dictionaryWithDictionary:
[movies objectAtIndex:indexPath.row]];
[detailView fill:dict];
[self.navigationController pushViewController:detailView animated:YES];
[detailView release];
}
Вот мой метод заполнения UIView в detailViewController:
-(void)fill: (NSDictionary*) fillData
{
//movie = [NSDictionary dictionaryWithDictionary:fillData];
NSLog(@"DETAILS: %@",[fillData objectForKey:@"description"]);
self.title = [NSString stringWithFormat:@"%@ (%d)",
[fillData objectForKey:@"title"],
[fillData objectForKey:@"year"]];
//[movie objectForKey:@"title"];
self.img = [[UIImageView alloc] initWithImage:
[UIImage imageNamed:[fillData objectForKey:@"image"]]];
self.description = [fillData objectForKey:@"description"];
self.cast = [fillData objectForKey:@"cast"];
}
Когда я пытаюсь распечатать описание из словаря с помощью NSLog, оно печатается нормально.