在通过xib加载视图的时候,我们遵循一个准侧
那就是顶层视图 我们的成员变量要是强引用 若是非顶层视图,而是顶层视图的子视图,为了防止顶层视图被释放以后,字视图还存在而造成的内存泄漏,我们把这字视图的成员变量定义为弱饮用
现在问题是,在ARC模式下,假如我有个视图控制起ViewController,然后有个UIButton子视图
@interface ViewController:UIViewController
{
weak/strong IBOutlet UIButton* button;
}
这时,在ARC模式下,无论我是指定它是强引用,还是弱引用,在加载了xib文件中(xib中设置了button和一个UIButton的关联),用
NSLog(@"Retain count is %ld", CFGetRetainCount((__bridge CFTypeRef)button));方法查看button的retainCount,都一样是3
所以我就不了解了,不是强应用会使对象的retainCount加1,而弱引用不会影响对象的retainCount吗?怎么无论用strong还是weak,得到的retainCount都是相同值呢?
在加载xib文件时,底层到底是怎样给button赋值的?
真的想不明白,请各位大神指教一下,不胜感激