В моем корневом представлении у меня есть табличное представление с тремя строками. Когда я нажимаю на любую строку, она представляет новый вид, а затем я могу нажать кнопку назад, которая автоматически создается моим навигационным контроллером. Моя проблема возникает, когда я пытаюсь щелкнуть строку, которая уже была выбрана ранее. Я получаю сообщение об ошибке EXC BAD ACCESS. Я думаю, что это весь необходимый код:
- (void)dealloc
{
self.rowChosenArray = nil;
self.rootChoicesArray = nil;
self.customImage = nil;
self.rootTableView = nil;
[super dealloc];
}
- (void)viewDidLoad
{
[super viewDidLoad];
self.rootChoicesArray = [[[NSMutableArray alloc] initWithObjects:@"",@"See Today's Deals!", @"My Purchased Deals", @"Personal Settings", nil] autorelease];
self.rowChosenArray = [[[NSMutableArray alloc] initWithObjects:@"", nil] autorelease];
DealsViewController *dealsViewController = [[DealsViewController alloc] initWithNibName:@"DealsViewController" bundle:nil];
[self.rowChosenArray addObject:dealsViewController];
[dealsViewController release];
PurchasedDealsViewController *purchasedDealsViewController = [[PurchasedDealsViewController alloc] initWithNibName:@"PurchasedDealsViewController" bundle:nil];
[self.rowChosenArray addObject:purchasedDealsViewController];
[purchasedDealsViewController release];
SettingsViewController *settingsViewController = [[SettingsViewController alloc] initWithNibName:@"SettingsViewController" bundle:nil];
[self.rowChosenArray addObject:settingsViewController];
[settingsViewController release];
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UIViewController *targetViewController = [rowChosenArray objectAtIndex: indexPath.row];
[[self navigationController] pushViewController:targetViewController animated:YES];
[targetViewController release];
}
Я до сих пор не знаю, где / когда выпускать / устанавливать объекты в nil (все четыре моих объекта имеют свойство retain в заголовочном файле.
Заранее спасибо за помощь, дайте мне знать, если вам что-то еще понадобится.