iOS:简单MVC模型中的内存泄漏

我已经build立(一定是简单的…)MVC模型,但是当推回button时我仍然有内存泄漏。

模型类:.h

@interface Nominal : NSObject { int nominalID; NSString *nominal; NSString *nominalImg; NSString *nominalName; } @property(nonatomic)int nominalID; @property(nonatomic,retain)NSString *nominal; @property(nonatomic,retain)NSString *nominalImg; @property(nonatomic,retain)NSString *nominalName; @end 

.M

 @implementation Nominal @synthesize nominal,nominalID,nominalImg,nominalName; -(void)dealloc { [self.nominal release]; [self.nominalImg release]; [self.nominalName release]; } @end 

我也释放string。

在我看来,我把它填充如下:

。H

 @interface Nominals : UIViewController { ... NSMutableArray *nominalsArr; ... } @property(retain,nonatomic)NSMutableArray *nominalsArr; 

.M

  - (void)viewWillAppear:(BOOL)animated { [[self navigationController]setToolbarHidden:YES animated:YES]; DBAccess *dbAccsess=[[DBAccess alloc]init]; self.nominalsArr=[dbAccsess returnNominals:subCountryID]; [dbAccsess closeDataBase]; [dbAccsess release]; [super viewWillAppear:animated]; } - (void)dealloc { [nominalsArr release]; [self.navigationController release]; [super dealloc]; } 

看起来我释放了整个神圣的东西,但是当我从这个视图推包button到以前,内存泄漏popup:

在这里输入图像说明

我做错了什么?

你的帮助是完全赞赏。

你已经在[Nominal -dealloc] [super dealloc]中忘记了[super dealloc] [Nominal -dealloc] 。 此外,不要调用[self.navigationController release]因为该属性已经由超类( UIViewController )处理。