У меня возникла досадная проблема, и я не могу понять, почему.
У меня есть UIViewController, который я представляю в таком виде:
interviewsViewController *interviewsVC = [[interviewsViewController alloc] initWithNibName:nil bundle:nil];
[interviewsVC setManagedObjectContext:_managedObjectContext];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:interviewsVC];
[interviewsVC release];
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
Затем, когда я увольняюКонтроллер представления выглядит так:
- (void)dismissViewController
{
[self dismissModalViewControllerAnimated:YES];
}
Вызывается dealloc:
- (void)dealloc
{
[_managedObjectContext release];
[_interviewsArray release];
[scrollView release];
[pageControl release];
}
Когда контроллер представления отключается, я отправляю предупреждение памяти через меню симулятора iPhone и метод viewdidunload получаетПозвонил:
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
self.scrollView = nil;
self.pageControl = nil;
}
Но всегда есть ошибка EXC_BAD_ACCES в self.scrollView = nil ... Более конкретно в этой строке:
@synthesize scrollView;
И я не могу понять, почему?
Если я добавлю точку останова на строке выше этой, scrollView не будет зомби или не будет равен 0x0 ...
У вас есть идея?
PS: Вот заголовок:
#import <UIKit/UIKit.h>
@interface interviewsViewController : UIViewController <UIScrollViewDelegate>
{
NSManagedObjectContext *_managedObjectContext;
NSMutableArray *_interviewsArray;
NSUInteger _fetchOffset;
CGFloat _lastXValue;
}
@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;
@property (nonatomic, retain) NSMutableArray *interviewsArray;
//IBOutlet
@property (nonatomic, retain) IBOutlet UIScrollView *scrollView;
@property (nonatomic, retain) IBOutlet UIPageControl *pageControl;
И я установил делегат просмотра прокрутки в XIB (не в коде).