Foo отвечает за освобождение UIBarButtonItem, который он создает, потому что Foo владеет им. Это можно сделать, просто отправив сообщение autorelease
на UIBarButtonItem
. В противном случае это будет утечка.
self.bar.variable1 = [[[UIBarButtonItem alloc] initWithCustomView:customView] autorelease];
Если Бар должен держать variable1
, он должен претендовать на владение UIBarButtonItem
. Бар отвечает за сохранение (и последующее освобождение в будущем) самого UIBarButtonItem
.