Tableview didselrowatindex - это обычное место, где происходят такие утечки памяти.
Один из способов устранить утечки памяти - убедиться, что вы создали только один экземпляр ViewController, а затем повторно его используете.
Кроме того, эта техника применяется не только для создания и отображения контроллеров представления, но и всего остального.Если вы создаете что-либо в коде, например, uilabels и т. Д., Убедитесь, что вы не создаете несколько экземпляров.
/ * code * /
// in the interface create an ivar ... or a property if needed
UIViewController *childViewController;
///, а затем позжекод, табличное представление didSelectRow и т. д.
// don't create multiple instances of the VC, rather, check to see if we can reuse one
if (! childViewController)
{
childViewController = [[UIViewController alloc] init];
}
// do some things with the viewController
childViewController.someProperty = someValue;
[self.view addSubview:childViewController.view];