Откровенно говоря, я немного смущен, и мой ответ не полностью решает проблему, но обнаруживает довольно неожиданные вещи.
я предположил, что
UIViewController *weakOrStrongViewController = [storyboard instantiateViewControllerWithIdentifier:@"viewControllerID"];
ли что-то подобное - initWithNibName
метод
и мы должны держать такие объекты, как strong
ссылки.
, но когда я сделал следующее:
__weak UIViewController *weakOrStrongViewController = [storyboard instantiateViewControllerWithIdentifier:@"viewControllerID"];
weakOrStrongViewController не были высвобождены на следующей строке. Более того, я могу легко представить его и уволить.
Я также обнаружил, что retainCount является: (я знаю, что это не рекомендуется и может ввести в заблуждение)
NSLog(@"Retain count is %ld", CFGetRetainCount((__bridge CFTypeRef)self.presentedViewController));
Retain count is 5
Этот метод чисто описано в официальной документации.
сильный. Работает ли он со слабым :? – Injectios