1
所以这是个问题。它为什么这样做?甚至当我做这样的事情为什么UIViewController的view属性在每次访问时递增retainCount?
NSLog(@"view's retainCount %d", [viewController.view retainCount]);
它递增保留计数。
所以这是个问题。它为什么这样做?甚至当我做这样的事情为什么UIViewController的view属性在每次访问时递增retainCount?
NSLog(@"view's retainCount %d", [viewController.view retainCount]);
它递增保留计数。
不要看保留计数。
viewController的getter会为你保留它,所以它可以为你返回一个引用(在本例中)访问“retainCount”变量。它将此引用作为“autorelease”返回,所以它不是真正的持有保留计数的perminantley。例如,如果您连续运行5次NSlog函数,您可能会看到retainCount增加5,但是如果您创建了一个UI按钮来调用它 - 从而使autorelease具有踢入的能力按下按钮之间 - 你不会看到它永远向上。