программирование iphone + переход от одного вида к другому, утечка памяти - PullRequest
0 голосов
/ 30 июня 2011

У меня есть класс MarshViewController.h, и я использую следующий код для перехода от одного viewcontroller к другому.

#import "ExpertGameController.h"
@interface MarshViewViewController : UIViewController<UIAlertViewDelegate> {
ExpertGameController *nextExpertGame;
}
@property(nonatomic,retain)ExpertGameController *nextExpertGame;

In .mi синтезировали его, и я использую метод ниже.Я выпустил nextExpertGame, но все равно он теряет память

-(IBAction)expertGame
{

    nextExpertGame=[[ExpertGameController alloc]initWithNibName:@"ExpertGameController" bundle:nil];
     [self.navigationController pushViewController:nextExpertGame animated:YES];
    [nextExpertGame release];

}

Любая помощь приветствуется.

Ответы [ 2 ]

0 голосов
/ 05 августа 2013

Более простой способ перехода от одного вида к другому показан в следующем коде:

#import "ExpertGameController.h"
@interface MarshViewViewController : UIViewController<UIAlertViewDelegate> {

      //Your declared variables
}


-(IBAction) expertGame {

ExpertGameController *objExpertGameController = [[ExpertGameController alloc]  initWithNibName:@"ExpertGameController" bundle:nil]; 

[self.navigationController pushViewController: objExpertGameController animated:YES];
[objExpertGameController release];

}

Надеюсь, это поможет!

0 голосов
/ 30 июня 2011

Когда вы выделили контроллер, вы дали ему счет сохранения 1, когда вы выдвинули его на контроллер навигации, вы дали ему счет сохранения 2, а затем, когда вы его отпустили, вы снизили счет сохранения до 1. Когда Вы вытаскиваете этот контроллер вида из контроллера навигации, счетчик удержаний будет уменьшен до 0, а затем будет удален из памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...